一步步学汇编(四)[bx]和loop

时间:2022-04-07 03:22:26

虽然今天很不爽,也有种自己心智要突破的感觉,但是每天要做的是还是
要做的,学汇编吧~

要完整地描述一个内存单元,需要两种信息:(1)内存单元地址
(2)内存单元的长度(类型)

对于寄存器接收内存的数据的类型会自动判断:
(al)、(bl)、(cl)等得到的为字节型
(ds)、(ax)、(bx)等得到的为字型
inc bx 的意思为bx中的内容加1

loop指令执行时要进行的两步操作:
(1)(cx) = (cx)-1(要特别注意是先减1,再判断)
(2)判断cx中的值,不为零在转至标号处执行程序,如果为零则向下执行

在汇编语言中标号实际代表一个地址

要循环执行的程序段,要写在标号与loop指令之间,这样就刚好执行cx中
所存数次数的循环

16进制表示的数 最开头如果不是数字要加0以示区分,例如ffffh,最好
写成0ffffh

在汇编源程序中,指令“mov ax,[0]”被编译器当做指令“mov ax,0”处理
所以在写源程序中我们可以将偏移地址写入bx中,然后写作,mov ax,[bx]
或者在“[]”的前面显式地给出段地址所在段寄存器

在一般的PC机中,DOS方式下,DOS和其他合法的程序都不会使用0:200~0:300的256个字节的空间,
所以这段是安全的空间