欢迎来到天天文库
浏览记录
ID:11940914
大小:119.00 KB
页数:83页
时间:2018-07-15
《汇编语言及其应用复习资料(西南民大)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、汇编语言及其应用复习资料(西南民大)导读:就爱阅读网友为您分享以下“汇编语言及其应用复习资料(西南民大)”的资讯,希望对您有所帮助,感谢您对92to.com的支持!(2)LEA指令获取的是主存单元的有效地址,不是物理地址,也不是该单元的内容;(3)LEA指令可以实现计算功能。例3.12有效地址的获取。movbx,0400h;bx=0400hmovsi,02h;si=02hleabx,[bx+si];bx=bx+si=0400h+02h=0402h指令序列执行情况如图3.18所示,例3.12的第3条指令也可视为实现了将BX和SI的内容相加,结果送入到BX中。图3.
2、18例3.12程序段的执行情况3.5.2指针传送指令83LDS/LES指令的格式:LDS/LESDest,Src功能:将存储器操作数的逻辑地址送至指定寄存器。语法格式:LDS/LESr16,Mem;r16?Mem,DS/ES?Mem+2;将Mem指定的字送至r16,Mem的下一字送DS/ES。说明:源操作数只能是存储器操作数;目的操作数只能是16位通用寄存器。例3.13设DS=1000H,BX=200H,SI=10H,部分内存单元的值如图3.19所示,给出指令执行后BX的值。LDSDX,[BX+SI];DX=4100H,DS=0302H指令序列执行情况如图3.2
3、0所示。`存储器3241H01000H:0213H1000H:0210H图3.19例3.13的内存单元情况40赋初值图3.20例3.13的指令执行情况3.6输入/输出指令83输入/输出指令实现输入输出设备与主机之间的数据传递,如读写数据。汇编语言的最大优势在于,它提供对底层硬件的直接控制和访问。使用汇编语言,程序员可以“面向机器”,直接、高效地控制输入输出过程,充分发挥汇编语言的基本特性。3.6.1I/O原理输入/输出是指CPU与外部设备之间的数据传送。由于与计算机连接的I/O设备种类繁多,其工作原理和数据的传送速度和编码格式各不相同,而且I/O设备的工作速度难
4、以与CPU的速度相比,主机的工作方式也存在着较大的差异,也正因为如此,主机与外设之间不能直接进行信息交换。因此,每个I/O设备都通过专门的I/O接口与系统相连,通过I/O接口来协调两者的数据传送,如图3.21所示,处理器并不直接操纵外设,而是通过I/O接口来控制外设。I/O接口电路数据总线数据寄存器处理器控制总线状态寄存器地址总线控制寄存器输入/输状态信号出设备外设数据控制信号图3.21I/O接口电路图CPU对外部设备的各种“操作”,都是通过“接口”实现。I/O接口包括多个存放数据、状态和控制信息的寄存器,分别以端口地址标识,数据的输入/输出通过I/O端口实现。
5、8086系统通过I/O指令实现对I/O端口的读写。41833.6.2I/O地址及寻址方式I/O接口电路由接口寄存器组成,需要用编号区别各个寄存器,I/O地址是接口电路中寄存器的编号,端口是I/O地址的通俗说法。系统通过这些端口与外设进行通信,采用十六进制数来表达端口。8086用于寻址外设端口的地址线为16条,支持216=64K个8位端口,I/O地址可以表示为:0000H-0FFFFH。访问I/O端口只有两种寻址方式:直接寻址和DX间接寻址。1.直接寻址由I/O指令直接提供8位I/O地址,只能寻址最低256个I/O地址(00H-0FFH)。2.间接寻址用寄存器DX
6、保存I/O地址。DX是16位寄存器,所以可寻址全部I/O地址0-65535(0000H-0FFFFH)。若端口号为0-255(00H-0FFH),则端口号可以在指令中直接使用;否则由DX的值指定端口号。3.6.3I/O指令8086微处理器通过访问I/O端口进行外部操作使用输入/输出指令。8086常用指令都可以存取存储器操作数,但存取I/O端口实现输入/输出的指令数量很少。只有两种:输入指令IN和输出指令OUT,并且只能利用寄存器AL/AX与I/O端口通信。1.输入指令IN83将外设数据传送给CPU的AL/AX。IN指令的格式:INAL/AX,Src;AL/AX?
7、Src指定的端口功能:将Src指定端口的1个字节/字读入AL/AX语法格式:INAL/AX,i8/DX;i8为0-255之间的端口号2.输出指令OUT将CPU内的AL/AX数据传送给外设。OUT指令的格式:OUTDest,AL/AX;Dest指定的端口?AL/AX功能:将AL/AX的1个字节/字写到Dest指定的端口语法格式:OUTi8/DX,AL/AX;i8为0-255之间的端口号例3.14从21H端口输入1个字节,可以用两种寻址方式实现:inal,21H;直接寻址movdx,21H;间接寻址inal,dx例3.15将1字节数据80H送到3FCH端口。分析:因
8、为端口号3FCH>0FF
此文档下载收益归作者所有