Wpis z mikrobloga

#programowanie #assembler

mam pytanie czy dobrze komentuje rzecz dzieje się na x86
.data
stale DW 2,1
napis DW 10 dup (3),2
tekst DB 7
DQ 1
.code
_main:
MOV CX, napis -1 ; jeden bajt przed symbolem napis zaczynam czytać więc mam 0103 w pamięci ale Littyle Endian wiec ładuje do CX 0301H
SUB tekst, CH ; z adresu text ładuje 1 bajt (tj 07H) wykonuje odejmowanie od 03H i zapisuje pod ten adres 04H
MOV EDI,1 ; tu EDI ma wartość 1
MOV tekst[4*EDI],CH ; od czwartego bajtu od tekst zapisuje 03 więc tekst wyglada teraz 07 01 00 00 03
MOV EBX, DWORD PTR tekst+1 ; EBX to 03 00 00 01 bo lityle endian?

;;; dobrze kumam?
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach