寄存器内容写入内存失败,请教下
问题14:运行失败assume cs:xuwen
xuwen segment
start:mov bx,1000H
mov ds,bx
mov ,ax(错误在这句)
mov ax,4c00H
int 21h
xuwen ends
end start
问题15:运行失败
assume cs:xuwen
xuwen segment
start:mov bx,1000H
mov ds,bx
mov al,
mov ,cx(错误在这句)
mov ax,4c00h
int 21h
xuwen ends
end start 学了好多年了,往差不多了。
内存地址为0的区域本身就不允许读写。 newu 发表于 2019-6-12 22:11
学了好多年了,往差不多了。
内存地址为0的区域本身就不允许读写。
他并没有写内存绝对地址0,他写的是1000:0
也就是内存绝对地址10000
在实模式下,就是写内存绝对地址0也没事,那里保存着除法溢出的中断地址 直接寻址方式
mov ax,
如果没有特殊说明,直接寻址的操作数一般在内存的数据段中,即隐含的段寄存器是DS。
(也可以是别的段寄存器,但要加上“:”)例如 mov ax,es:
但现在是反过来的即
mov ,ax
这种没有隐含的段寄存器,所以要自己添加段寄存器,例如
mov ds:,ax 谢谢大家了 我问题解决了
assume cs:xuwen
xuwen segment
start:mov bx,1000H
mov ds,bx
mov ds:,ax(错误在这句)
mov ax,4c00H
int 21h
xuwen ends
end start
ds:
加上一个ds就可以了
页:
[1]