急,请教一个很菜的问题,变量定义后,编译的问题

来源:百度知道 编辑:UC知道 时间:2024/06/14 21:06:18
请问:在汇编程序中定义变量时,比如 : x1 dw 1234H,x1这个变量在编译后成为一个偏移地址,是不是这个偏移地址有属性(存在于内存的某个地方):比如占几个字节,要不,怎样知道要取出的是两个字节的数据呢?

汇编程序定义数据段后,要进行段初始化后,才在内存中看得到
如果你取出的数据用的是16位的寄存器,那么就默认取出两个字节的数据;如果用的是8位的寄存器,默认取出低8位的数据。
比如说:
data segment
x1 dw 1234h
data ends
……
……
mov ax,data ;段初始化后用d0命令就可以在内存中看到定义的数据
mov ds,ax
若是 mov al,x1
那么 结果是al=34h
若是 mov ax,x1
那么 结果是ax=1234h