《微机原理与应用》第4章汇编语言程序设计(09年)

《微机原理与应用》第4章汇编语言程序设计(09年)

ID:45497934

大小:3.70 MB

页数:140页

时间:2019-11-13

《微机原理与应用》第4章汇编语言程序设计(09年)_第1页
《微机原理与应用》第4章汇编语言程序设计(09年)_第2页
《微机原理与应用》第4章汇编语言程序设计(09年)_第3页
《微机原理与应用》第4章汇编语言程序设计(09年)_第4页
《微机原理与应用》第4章汇编语言程序设计(09年)_第5页
资源描述:

《《微机原理与应用》第4章汇编语言程序设计(09年)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《微机原理与接口技术》主讲易凡wdyifan@163.com武汉大学物理学院电子科学与技术系第四章 汇编语言程序设计4.1汇编语言的基本概念机器语言用机器码(二进制码)表示操作的程序语言,与处理器相关,可直接执行,但难懂,检查难;4.1.1汇编语言程序的一般概念高级语言具有普适性的程序设计语言,功能强大,易编写,易检查,与机器无关。汇编语言用多种助记附表示多操作的语言,面向机器,但易懂,易检查,机器不能识别4.1.1汇编语言程序的一般概念(续)汇编语言源程序用汇编语言按一定格式编写的程序,它不能直接执行。源程序的属性为ASM目标文件将源程

2、序经汇编后转换成的二进制代码的文件,属性为OBJ执行文件经连接后将目标文件与库文件或其它目标文件连接在一起形成的可执行的文件,属性为EXE汇编将源程序转换成目标文件的翻译过程汇编程序完成汇编工作的程序汇编程序的主要功能检查源程序;测出源程序中的语法错误,给出出错信息;产生目标代码程序,并给出列表文件(LST文件);展开宏指令;常用的汇编程序有小汇编ASM,宏汇编MASM,以及TASM,TASMX,TASM32等4.1.2上机的步骤编辑建立ASM源程序;将ASM文件经汇编(MASM)转换成OBJ文件;将OBJ文件经连接(LINK)转变成EXE

3、文件上机执行。LINK连接编辑源程序PROGR.ASM文件PROGR.OBJ文件PROGR.EXE文件MASM汇编4.2汇编语言程序格式指令语句能产生目标代码,CPU可以执行,完成特定功能的语句,由CPU指令组成。指示语句(伪指令语句)不产生目标代码,仅是为汇编程序作指示的语句。宏指令语句是一个指令序列,在汇编时,所有的宏指令语句都被展开为相应的指令序列。4.2.1汇编语言语句的类型4.2.2语句的格式语句格式为:[名字]〈助记符〉[操作数][;注释]其中,〈助记符〉项为必要项,[方括号项]为可选项。[名字]可为作名字的字符有:字母A~Z,

4、数字0~9,字符?、·、@、_、$等数字不能放在名字之首在指令语句中,名字一般是标号。伪指令语句中,名字通常是变量(名),段名,过程名等标号:是某指令代码存放单元的符号地址,标号后必须有一个冒号“:”标号的属性:段,偏移量,类型(FAR,NEAR)变量(名)-某个存储器中数据单元或数据区的符号地址,它代表数据单元或数据区。变量有三种属性:段,偏移量,类型(BYTE,WORD,DWORD,QWORD)4.2.2语句的格式〈助记符〉分为指令助记符和伪指令助记符。[操作数]指令操作的对象。可作为操作数的有:常量,寄存器,标号,变量和表达式。常量:

5、如立即数,直接寻址的地址,ASCⅡ码字符串等寄存器:AX,AH,DS,SP,DX等表达式:是常数、寄存器、标号、变量与一些操作符相组合的序列。分数字表达式和地址表达式两种。数字表达式产生一个数值结果,地址表达式产生一个地址。;注释项它不会被汇编,其功能为增加源程序的可读性。注释前必须加分号‘;’4.2.2语句的格式(续)4.2.3操作符算术操作符+(加)、-(减)、﹡(乘)、/(除)、MOD(模除,即两个整数相除后取余数)例4.1MOVDX,BLOCK+(6-1)﹡2该指令语句等价于MOVDX,BLOCK+10算术操作符应用之例例4.2数组

6、ARRAY定义如下,试写出把数组长度(字数)存入CX寄存器的指令。ARRAYDW1,2,3,4,5,6,7ENDDW?END是为计算数组长度而建立的符号地址。所需指令为:MOVCX,(END-ARRAY)/2汇编后计算表达式而形成了指令MOVCX,7逻辑运算操作符AND(逻辑与)OR(逻辑或),XOR(逻辑异或)NOT(逻辑非)。它们只能用于数字表达式中4.2.3操作符(续)例4.4ANDDX,PORT_VALAND0FEH汇编‘PORT_VALAND0FEH’确定了外设端口号例4.3INAL,PORT_VALOUTPORT_VALAND0

7、FEH,AL当端口号PORT_VAL为偶数时,输出端口号与之相同;当PORT_VAL为奇数时,输出端口号比输入端口号小1逻辑运算操作符应用之例关系运算操作符EQ(等于)、NE(不等)、LT(小于)、GT(大于)、LE(小于或等于)、GE(大于或等于)参与关系运算操作的两个操作数必须都同为数字或为同一段内的两个存储器地址。计算的结果应为逻辑值:结果为真,表示为FFFFH结果为假,表示为04.2.3操作符(续)例4.5:MOVAX,4EQ3;结果为假等价于MOVAX,0MOVAX,4NE3;结果为真等价于MOVAX,0FFFFH例4.6MOVB

8、X,((PORT_VALLT5)AND20)OR((PORT_VALGE5)AND30)当PORT_VAL﹤5时,汇编结果为:MOVBX,30否则,汇编结果为:MOVBX,20关

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。