Törölt nick Creative Commons License 2013.11.07 0 0 22946

Képzeld el, hogy van egy elektronikus hőmérő, ami fájlban tárolja a mért adatokat. Például másodpercenként egy mért értéket, éspedig előjeles, kétbájtos egész formában. Amikor olyan programot írok, amivel ezt a fájlt akarom feldolgozni, be kell olvasnom a fájlból az adatokat. Van két lehetőségem.

1) Beolvasom bájtonként (High Byte és Low Byte), az eredmény pedig = High Byte * 256 + Low Byte. Csak itt még külön figyelnem kell a High Byte első bitjére, ami az előjelet takarja.

2) Beolvasom Integer változóba, ami két bájtos, előjeles ábrázolási mód, és ha szerencsém van, akkor automatikusan kezeli az előjelet, és nem kell szenvednem vele.

De ez mindig lutri. Ha lekódolod, hogy a program olvasson be két bájtot egy integer vltozóba, akkor melyik lesz elöl: a High Byte, vagy a Low Byte? Pl. Ha ez a két bájt jön a sorban: 11, 65 (hexadecimális számok) akkor azt 4453-nak, vagy 25873-nak fogja venni? Azt hiszem, ez programnyelv-függő, szóval mindig kísérletezni kell vele. Egyszer írtam egy jó kis programot Delphiben, ami egy mérőműszer adatait dolgozta fel, abban használtam ezt a módszert. VBA-ban talán még sosem kellett.