Skip navigation

3. Kis ZH

Adatok kiterjesztése

Az adat kiterjesztő utasítások nem összekeverendőek:

  • CBW : AL -> AX,
  • CWD : AX -> DX:AX,
  • CWDE : AX -> EAX,
  • CDQ : EAX -> EDX:EAX.

Továbbá:

  • A fenti utasításoknak nincs paramétere!
  • Nem azt a számot terjesztik ki, amire gondolunk, hanem azt, ami a specifikációjuk szerint a feladatuk! (Vagyis az EAX részeit)

Tömbök indexelése

  • A tömbök címzése a kapcsos zárójel operátorral történik!
  • De az elemek elérésében a memóriabeli eltolást kell megadni, BYTE-okban!
  • A memóriacím számításakor byte-ban kell megadni az eltolást, nem pedig bit-ben!

[t+2] != t+2 != t[2] != t[16]

Regisztek nevei és méreteik

EAX reszter részei:

  • AL: 8 bit = 1 byte,
  • AX: 16 bit = 2 byte,
  • EAX: 32 bit = 4 byte.

FONTOS továbbá:

  • Az EAX, és az AL ugyanannak a regiszternek különbözős részeire utal. Ha az AL-t módosítjuk, akkor az egész EAX értéke változik. (Ha egy számnak csak egy számjegyét írjuk át, akkor is megváltozik az értéke.)