读书人

新手在intel言程序中的

发布时间: 2013-01-26 13:47:04 作者: rapoo

新手在intel言程序中的一
中有一段程式:
.data
arrayB BYTE 10h,20h,30h
.code
mov esi, OFFSET arrayB
mov al,[esi]


我的理解是:esi32位寄存器,al是位寄存器 ,可以使用mov指令?

大哥忙解惑,不感激!
[解决办法]

引用:
上[esi]和esi是一的
这是瞎说,或者是你没看对或是想像错了。[esi] 是指 esi 寄存器的内容作为内存地址的那个内存的值;esi 则就指 esi 这个寄存器自身。
对一般的 Masm 汇编程序来说,[1234] 和 1234 都被认为是立即数,而非通常想像上的 [1234] 中的 1234 作为内存地址,但这个不算合理的理解不能由立即数推广到寄存器上。
所以,顶楼的问题就不是问题了吧,给 al 的是 esi 指向的内存处的那个字节,而非 esi 自身。

读书人网 >汇编语言

热点推荐