Je lis le livre de programmation et de langage IBM PC Assembly et dans le troisième chapitre je pense, l'auteur a commencé à parler de l'outil de débogage fourni avec MS-DOS. Dans les exemples, il a utilisé la commande A
pour assembler un code, puis a utilisé la commande U
pour désassembler le même code.La sortie de commande U dans l'outil de débogage dans MS-DOS
laisse supposer que le code était comme ça:
Note: l'adresse de départ est fixée à 100 en démarrant l'assemblage commande comme:A 100
MOV ax, 20
MOV dx, 10
ADD ax, dx
NOP
La question est ici, quand il a utilisé la commande U
pour désassembler le code de 100 où nous avons commencé à 106 où nous nous sommes arrêtés la sortie contient environ 5 colonnes.
je vais copier ici, et nous espérons que vous pouvez expliquer ce que sont ces nombres hexadécimaux:
`1` `2` `3` `4`
073F:0100 B81000 MOV AX, 20
073F:0103 BB1000 MOV DX, 10
073F:0106 01C6 ADD AX, DX
073F:0108 90 NOP
Colonne 2 et 4 sont claires et très simples, mais quels sont ces chiffres dans la colonne 1 et 3?
1,2 est l'adresse de la mémoire, la figure 3 est un code d'octets, la figure 4 est un démontage de code octet? – YOU
@YOU voulez-vous dire 1,2 sont juste 1 colonne? 073F: 0100 n'est pas deux choses? juste une chose, l'adresse de la mémoire? – Kordy
0x073F0100 est une adresse réelle, ':' est juste pour les humains à comprendre clairement, imo. – YOU