在Intel8086系统中,已知数据段中偏移地址为2000H开始的内存中存放0~9的平方,试把查表求3的平方的指令序列填写完整
解:查表指令要把表首的偏移地址送BX,要查找元素的序号送AL,表中第一个元素的序号为0,因为3的平方在表中的元素序号为3,所以查3的平方的指令序列就是MOVBX,2000HMOVAL,3XLAT2
在Intel8086系统中,设(DS)=1000H,在段地址为1000H,偏移地址为0100H开始的连续4个存储单元中存放的数据依次是11H,22H,33H,44H如图示执行指令:LDSSI,[0100H]指行后:(SI)=2211H(DS)=4433HLDS指令的功能是把段地址为DS,指定偏移地址开始的连续四个存储单元的内容,前两个单元内容送给目的操作数中的16位寄存器,后两个存储单元内容送给DS
所以可得到以上结果
在AT89S51单片机系统中,执行下列程序段:MOVR0,#50H;(R0)=50HMOV40H,#22H;(40H)=22HMOV50H,#33H;(50H)=33HINC@R0;(50H)=34HINCR0;(R0)=51HMOV@R0,40H;(51H)=22H分号后面是第一条指令执行的结果,所以最终的结果是(R0)=51H,(50H)=34H,(51H)=22H,(40H)=22H设8255A在8086微机系统中的端口地址分别为0120H~0123H,在单片机系统中的端口地址分别为06A0H~06A3H
现在在8255A的B口接8个发光二极管,C口接8个开关,试分别编写在微机系统和单片机系统中通过8255A的B口的开关控制A口的发光二极管亮灭的程序段
微机程序:8255A在微机中的地址为0120H~0123H,从地址信息可以看出8255A内部的两个地址引脚A0和A1接到了CPU地址总线的低两位,一般都是高位接高位低位接低位,所以8