0

我只是有一个问题,因为我正在学校学习 ASM 语言,但我不懂一些东西:

(BX)=0100H
MOV AX,BX

声明前的源地址(BX)是空的mov,我不明白为什么。我的想法是,这是因为 BX 中没有任何内容。真的吗 ?

这是英特尔语法。

4

2 回答 2

1

这一切都取决于上下文。bx 是否包含指针或值?周围的代码是什么?

lea     bx, somestring  ; abc
mov     ax, bx          ; ax contains pointer to abc
mov     ax, [bx]        ; ax will contain ba
于 2012-10-20T16:22:17.007 回答
0

看起来您正在将值0100h直接移动到 bx 寄存器。

要获取位置 0100h 中的内容,您需要将其指定为指向地址处的值(大小)的指针。

mov bx,WORD PTR ds:0x100对于字长

mov bl,BYTE PTR ds:0x100对于字节大小

于 2013-06-25T20:10:10.303 回答