- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三讲 8086汇编语言 教学目的 理解机器语言、汇编语言、高级语言的含义极其各自特点; 掌握8086汇编指令的7 种寻址方式,进一步了解8086系统MPU各寄存器的功能及其存储器的使用; 掌握汇编指令集中一些常用指令(数据传送、加减、逻辑操作类指令); 掌握汇编语言中的符号和伪指令; 掌握汇编语言完整的框架结构; 学会INT 21系统功能调用和常用Bios功能调用。 汇编语言 是一种面向机器的符号语言,使用指令助记符、地址标号等编写程序,需编译、链接转换成机器代码(.exe文件或.com文件), 才能执行。 运行速度快,可移植性差,功能不强、难于普及,但非常利于计算机底层硬件的操作,代码效率也很高。 人 计算机 计算机语言 常用计算机语言 机器语言 用二进制码“0”和“1”表示,能被计算机直接识别和执行。 编写、调试程序都很繁琐,编写的程序可移植性差,但执行速度很快。 为何需要计算机语言?——实现人机对话的需要 3.1 计算机语言 如要实现“将AX 中的值送BX”的操作,只需用下列汇编指令: MOV BX,AX 将AX 中的值送BX的机器码:89C3H 若CPU从内存中的代码区读取到89C3H,则执行“将AX 中的值送BX”的操作。 是类似于自然语言和数学描述语言的程序设计语言(如C),运行效率不及汇编语言编写的程序。 可移植性好、易于理解,对底层硬件进行操作时编程复杂。 常用计算机语言 机器语言 汇编语言 高级语言 3.1 计算机语言 高级语言和汇编语言最终都要编译、链接成为机器码,才能被计算机执行。 如同C语言程序的设计、开发具有Turboc2.0、VC6.0等集成开发环境(IDE)一样,可以用MASM、TASM等软件进行PC汇编语言程序的编辑、编译、链接、调试。 一、汇编指令格式 一条完整的汇编指令格式: [标号:] 操作助记符 [目的操作数] [,源操作数] [;注释] 如: 3.2 汇编指令的寻址方式 [标号:] 指令在内存中存放地址(偏移地址)的符号表示; 操作助记符 指明指令的功能,即执行什么操作,如mov、add 、and等; [目的操作数] 指明操作结果的存放位置; [,源操作数] 指明被操作对象; [;注释] 注释。 一、汇编指令格式 一条完整的汇编指令格式: [标号:] 操作助记符 [目的操作数] [,源操作数] [;注释] 3.2 汇编指令的寻址方式 标号和注释部分并不是必需的;有的指令的操作数隐含在指令中,如: DAA ;BCD数加法调整指令,源:AL;目的:AX PUSH AX ;入栈指令,源:AX;目的:[SS:SP] POP CX ;出栈指令,源: [SS:SP] ;目的: CX 汇编指令可以对各种数值、CPU中的寄存器、内存中的程序/数据进行操作,或者说,数值、寄存器、内存单元都可以成为汇编指令的操作对象。汇编指令查找操作对象的方式称为寻址方式。8086汇编共有7种寻址方式。 二、汇编指令寻址方式 1. 寄存器寻址 操作对象为寄存器 3.2 汇编指令的寻址方式 例:MOV CX,BX ;若执行前CX=1234H ; BX=5678H ;则执行后CX=BX=5678H 源和目的操作数都是寄存器寻址方式; 寄存器可以是8位或16位的寄存器 例:MOV BL,AH ;BL=AH 因为寄存器在CPU内部,所以采用寄存器寻址可提高运行效率。 二、汇编指令寻址方式 2. 立即数寻址 操作对象是立即数(数值常量) 3.2 汇编指令的寻址方式 例:MOV CX,2009H ;CX=2009H 源操作数:2009H,立即数寻址; 目的操作数:CX,寄存器寻址; 立即数可以是8位或16位,负数用补码表示: 例:MOV BL,-5 ;BL = 0FBH ADD AH,125 ;AH+7DH?AH MOV CX,-5 ;CX = 0FFFBH 上述三指令源操作数为立即数寻址,目的操作数为寄存器寻址; 立即寻址方式只用于源操作数,主要用来给寄存器或存储单元赋初值,也可以与Reg或Mem进行算术逻辑运算。 二、汇编指令寻址方式 3. 直接寻址 操作对象为存储单元中的值,并
文档评论(0)