matek2 volt Re: matek

Moczik Gabor pm_levlista at progzmaster.hu
Tue Oct 30 22:21:43 CET 2007


Erdos Zoltan wrote:
> Some numbers are represented in a form called a variablelength quantity. 
> These numbers are represented 7 bits per byte, most significant bits 
> first.  All bytes except the last have bit 7 set, and the last byte has 
> bit 7 clear.  If the number is between 0 and 127,  it is thus 
> represented exactly as one byte.

Ezek a számok byte-onként 7 bit felhasználásval vannak ábrázolva, a 
legnagyobb helyiértékű van elöl. Minden szám bájtjainak 7 bitje 1, kivéve az 
utolsó bájtot, ahol 0. Vagyis ha a szám 0..127 között van, akkor elfér egy 
bájton.

>          Number (hex)    Representation (hex)
>          00000000        00
 >          00000040        40
 >          0000007F        7F

Egyértelmű. 1 byteos 127-nél kisebb számok.
>          00000080        81 00

Ez 128, ez nem fér el 1 bájton, csak 2-n. Az első byte 7-ik bitje kötelezően 
1, a legalsó bitje pedig az ábrázoldandó szám 8-ik bitje, ez pedig pont 128.
A 128 alsó 7 bitje nulla, ezért a második (=utolsó) byte nulla.

>          00002000        C0 00

2000 hex = 00100000 00000000 bin

7-esével csoportosítva:

1000000 0000000

A 7-es csoportokat egyenkénd padding-elve, a nem-utolsó byteok 7-bitje 1, az 
utolsónak nulla:
11000000 00000000

Ez hexában: C0 00

A franc se fogja mindet végigírni, szerintem ez tök érthető...

-- 
((( Móczik Gábor  )))--((( pm -> @ -> progzmaster -> . -> hu  )))
((( Skype: moczik )))



More information about the Elektro mailing list