关于网站建设的建议,网站建设基础与网页设计,seosem顾问,昆山网站优化一、[BX]
利用BX寄存器存储偏移地址与DS配合使用
在DEBUG中可以使用mov al,[0]#xff0c;但在ml编译器里面会变成mov al,0
可以使用BX寄存器来解决
mov bx,0
mov al,[bx]补充 1、使用描述性符号()表示取内容 2、使用idata表示常量 二、loop循环指令
1、loop的概述
需要…一、[BX]
利用BX寄存器存储偏移地址与DS配合使用
在DEBUG中可以使用mov al,[0]但在ml编译器里面会变成mov al,0
可以使用BX寄存器来解决
mov bx,0
mov al,[bx]补充 1、使用描述性符号()表示取内容 2、使用idata表示常量 二、loop循环指令
1、loop的概述
需要用到cx寄存器存储循环次数
每次执行loop时都会进行(cx) (cx) - 1、判断cx的值
cx为0直接向下运行cx非零跳转到标号处运行。
2、loop的使用
assum cs:code
code segent
start: mov ax,2mov cx,11s: add ax,axloop smov ax,4c00Hint 21h
code ends
end start3、loop的Debug
1、G 0014跳转到0014位置 -- 调过循环
2、P执行完循环步过
3、D 地址查看内存信息
4、U查看汇编指令
5、A写汇编命令
三、[BX]和loop的联合
DX存储范围0~65535
类型不匹配(dx) (dx) 内存8位data结果越界(dl) (dl) 内存8位data
– 找一个16位寄存器 累加 ax dx 四、短前缀
可以在访问内存单元的指令中显式给出内存单元的段地址所在的段寄存器
mov ax,cs:[0]
mov bx,es:[0]五、安全空间
DOS中合法程序的内存范围0:200h ~ 0:2FFFh256字节