第五章
Posted g56355
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第五章相关的知识,希望对你有一定的参考价值。
两个约定:
约定符号():表示寄存器或者一个内存单元的内容,如(ax)表示ax中内容,(bx)表示bx内容,(20000H)表示内存20000H单元的内容。
约定符号idata表示常数。
[bx]用法:[bx]为一个内存单元,其中bx是偏移地址,也就是内存ds:bx处
如mov ax,[bx]就是把ds:bx处的值赋值给ax
loop指令:
格式:loop 标号
标号有些类似在C语言中goto的用法.
CPU执行loop时,先进行cx=cx-1,然后判断cx如果不为0就跳转至标号处执行程序,如果为0就继续向下执行。
cx中存放循环次数.
例如:
mov ax 2
mov cx,3
s:add ax,ax
loop s
就可以计算2^4。
也可以在debug中通过t,p,r命令来单步调试,观察程序运行的过程。
段前缀:在访问内存单元的指令中,用于显式指明内存单元的段地址的ds,cs,ss,es.
在8086中,0:200-0:02ff的256个字节的空间中,一般不会被别的程序使用,因此我们可以用debug查看一下,如果全部是0,则说明dos和其他合法程序没有使用这里,可以使用。
而如果向其他空间写入可能导致一些异常,甚至dos崩溃。
以上是关于第五章的主要内容,如果未能解决你的问题,请参考以下文章
JavaScript DOM编程艺术-学习笔记(第五章第六章)
《DOM Scripting》学习笔记-——第五章第六章 案列改进