当前位置:编程学习 > 汇编语言 >>

在汇编语言中 为什么mov [si],dx运行得,而mov shu[bx],dx这个就运行不得呢

data segment org 100h SHU db 256 dup(?) COUNT1 equ $-SHU ELEMENT db 3 dup(?) COUNT2 equ $-SHU data ends code segment assume ds:data,cs:code start: mov ax,data mov ds,ax mov es,ax mov cx,COUNT1 mov dx,00h mov bx,0 one: mov SHU[BX],dx inc BX inc dx loop one 上面是有错误的 start: mov ax,data mov ds,ax mov es,ax mov cx,COUNT1 mov dx,00h mov SI,offset SHU one: mov [SI],dx inc SI inc dx loop one 这个是运行得的
答案:因为shu表示一个地址相当于c语言中数组名 即:数组首地址
那么mov shu[bx],dx就有问题了
可以改为mov  (offset shu)[bx],dx    
offset shu这个表示一个偏移量而不是 地址
其他:即:数组首地址
那么mov shu[bx],dx就有问题了
可以改为mov  (offset shu)[bx],dx    
offset shu这个表示一个偏移量而不是 地址


有的是一个立即数,,好好看看

上一个:汇编语言程序设计题目,在线等答案!!!急!
下一个:汇编语言程序设计题目,在线等答案!!!急!

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,