Hogyan kell olvasni a fájlt bit
Hogyan kell olvasni a fájlt kicsit?
Hello.
Kérem, mondja meg, hogyan kell olvasni a fájlt kicsit. A legközelebbi dolog az, hogy kapok olvasni ezt a byte-fájlt BlockRead (F, Buf, 1). Akkor nem tudom, mit kell tenni. Segíts kérlek.
Zara hálás.
> Kérem, mondja meg, hogyan kell olvasni a fájlt
> Bit.
Semmi.
> Továbbá, nem tudom, mit kell tenni.
Elbontására vett byte-bit.
Oh! A második eljövetel. Újabban ez ugyanaz.
> Kérem, mondja meg, hogyan kell olvasni a fájlt # XA0 bitek.
Először is, írd meg a kicsit, majd úgy gondolja.
> Súgó kérem.
Azonnal hívják a konferencia van input elem „keresés” és a „Keresés” gombot. Ezt a kérdést vitatták neodnakratno.
És valaki írt, hogy miért?
Ha igen türelmetlen, akkor lehet a következő:
1. Jelenítse meg a fájlt a memóriában
2. Most a munka vele, mint egy byte tömböt, olvasás jobb bit a következő F-iey (kivett QStrings modul):
működnek Q_BitTest (P: Pointer; Index: Integer): Boole;
asm
# XA0; # XA0; # XA0; # XA0; BT # XA0; # XA0; # XA0; [EAX], EDX
# XA0; # XA0; # XA0; # XA0; SETC # XA0; # XA0; AL
végén;
Most, a reset forma majd kattintson a Keresés
# XA0; # XA0; # XA0; # XA0; mikor írja a kifejezést „file kicsit” üres ablak jelenik meg. És mégis. Talán nem csinálni.
Röviden összefoglalva, köszi a válaszokat :)
Anatoly Podgoretsky nem érted. Azt akarom, hogy ilyen hozzáférést bites, mert Meg kell mindegyik felvenni a korai határozott bit pozícióba.
Van valami amőba beszéltünk róla. Tudna popodrbnee. Nem vagyok programozó. Én egy kommunikátor.
Köszönöm előre.
1. TBits nem fér bele?
2. Állítsa be a 0..7 nem fog működni?
Személy szerint én ebben a helyzetben volna azonosítani a következő két típusa van:
TMyBits = (Bit0, Bit1, Bit2 Bit63.);
TSetOfMyBits = készlet TMyBits;
Ezután a fájl olvasása blokkokat 8 bájt egy változó típusú TSetOfMyBits (vagy # XA0; már olvasni a fájlt kell megfejtette az azonos blokkokat másolás ugyanolyan változó).
Bár ha emlékszel
> Akkor ezt a programot (vagy inkább ez az algoritmus) van varrva a processzor.
Kidolgoztam az algoritmus figyelembe véve az adott rendszer parancsok mikroprocesszor.
Vedd el a szakadékot „Htmlfile_i” és »d = app-bit«
Hermann, a tanár azt mondta, hogy először UTB összes szimulált számítógépen a wav fájl példa. Azaz, a titkosítani kívánt egy wav fájlt sem. És akkor a hang-adat már a processzor.
De egyébként kösz a segítséget :)
Itt! Végül, mondjuk egy kulcsszó „a tanár.” Így azonnal, és azt mondta.
> # XA0; Egy hang adatokat később a processzor.
Adja meg a tárgyat a tanár. Ha ez a „Processzor”, akkor meg kell csinálni két különböző munkák. Egy Pascal, a második a MC.
Ezt a munkát mester MY :)))))))
Nem kértem, hogy kiabálni: „Én vagyok a legnagyobb Walsh.”. Sajnos ez már néhány gyerek „kinetikus”.
Hermann
> Én személy szerint azt ebben a helyzetben volna azonosítani a következő két típusa van:
TMyBits = (Bit0, Bit1, Bit2 Bit63.);
TSetOfMyBits = készlet TMyBits;
miközben nem EOF (F) do # XA0; # XA0; # XA0; # XA0; # XA0;
kezdődik
BlockRead (F, Buf, 1);
És itt lenni?
Bár az én esetemben BlockRead (F, Buf, 8);
Ez attól függ, hogyan, hogy egy változót F (fájlok, a TSetOfMyBits). És mit rendelt RESET (F.).
Becsület végül arról bites műveleteket - műszakban, maszkok, darabjai a fájl levont többszöröse 8 byte és kezelni őket
Talán ezt a kódot
Olvas egy byte változó MyBite
Minden bájt
ellenőrizze, hogy van egy
ha a bit 1 ETS - ik helyen
A: = MyBite és 00000001
a második
A: = MyBite és 00000010
stb Természetesen, ha a> 0, akkor van egy kicsit - ha 0 - akkor nem.
mit kell ez?
Translation bájtok bitek:
funkció byte2str (B: byte): string;
var i: byte;
kezdődik
# XA0; # XA0; eredmény: = "";
# XA0; # XA0; i: = 0-tól 7 do
# XA0; # XA0; kezdődik
# XA0; # XA0; ha (B és 128) = 128, akkor eredményezhet: = eredmény + "1" mást eredmény: = eredmény + "0";
# XA0; # XA0; B: = (B SHL 1);
# XA0; # XA0; végén;
végén;
Caption: = byte2str (4);
Tekintettel a probléma, ezek mind még valahogy fecskendeznek a memóriában. Természetesen nem egy kicsit, de IMHO, blokkokat.
> Vagy programozni mikrochipek és szoftverek már tudja Pascal?
„A program a programozás” nem más, mint a bináris adatokat nem veszi, hanem egy kompillyatory Pascal. És én itt üzenete „dühös megjegyzések” körülbelül egy közülük. Bár kompillyatory C 51 processzor egy teljesen elfogadható, ha nem úgy optimális.
Íme két funkciója van:
működnek DecToBin (december: Byte): egész;
kezdődik
# XA0; Eredmény: = (december div 1 mod 2) + (december div 2 mod 2) * 10 + (december div 4 mod 2) * 100
# XA0; # XA0; + (december div 8 mod 2) * 1000 + (december div 16 mod 2) * 10000
# XA0; # XA0; + (december 32 div mod 2) * 100.000 + (december 64. ágazat mod 2) * 1000000
# XA0; # XA0; + (december div 128 mod 2) * 10000000;
végén;
funkció Bit (Bint: integer; n: Byte): Byte;
kezdődik
# XA0; Eredmény: = Bint div Round (Exp ((8-n) * Ln (10))) mod 10;
végén;
DecToBin áthelyezi egy byte bináris, Bit letölti a bináris byte az index.