第4微机原理与接口技术课件清华大学.ppt
《第4微机原理与接口技术课件清华大学.ppt》由会员分享,可在线阅读,更多相关《第4微机原理与接口技术课件清华大学.ppt(72页珍藏版)》请在三一文库上搜索。
1、1,第4章 汇编语言程序设计,2,主要内容,汇编语言源程序的结构 汇编语言语句格式 伪指令 功能调用 汇编语言程序设计,3,4.1 汇编语言源程序,了解: 汇编语言源程序的结构 汇编语言语句类型及格式,4,一、汇编语言源程序结构,5,1. 汇编语言源程序与汇编程序,汇编语言源程序 汇编程序,用助记符编写,汇编程序,汇编语言源程序,机器语言目标程序,源程序的编译程序,6,2. 汇编语言程序设计与执行过程,输入汇编语言源程序(EDIT) 汇编(MASM) 链接(LINK) 调试(TD),源文件 . ASM,目标文件 .OBJ,可执行文件.EXE,最终程序,7,3. 汇编语言源程序结构,数据段名 S
2、EGMENT 数据段名 ENDS 附加段名 SEGMENT 附加段名 ENDS,堆栈段名 SEGMENT 堆栈段名 ENDS 代码段名 SEGMENT 代码段名 ENDS END,8,二、汇编语言语句类型及格式,9,1. 汇编语言语句类型,指令性语句 指示性语句,CPU执行的语句,能够生成目标代码,CPU不执行,而由汇编程序执行的语句,不生成目标代码,10,2. 汇编语言语句格式,指令性语句: 标号: 前缀 助记符 操作数,操作数 ;注释,指令的符号地址 标号后要有冒号,操作码,注释前加分号,11,指示性语句格式,名字 伪指令助记符 操作数 ,操作数, ;注释,变量的符号地址 其后不加冒号,指
3、示性语句中至少有一个操作数,12,3. 标号、名字,标号后有冒号,在指令性语句前;名字后不加冒号,在指示性语句前。 英文字母、数字及专用字符组成,最大长度不能超过31个,且不能由数字打头,不能用保留字(如寄存器名,指令助记符,伪指令)。,13,4. 操作码,指令码 伪指令助记符 指示汇编程序要完成的操作。 作用: 定义变量 分配存储单元 指示程序开始和结束等,命令CPU要完成的操作,14,5. 注 释,用分号作为注释的开始; 用于说明程序或语句的功能,以便于阅读和理解,15,6. 操作数,寄存器 存储器单元 常量 变量或标号 表达式,16,常 量,数字常量 字符串常量 例:A MOV AL,A
4、 例:ABCD,汇编时被译成对应的ASCII 码41H,42H,43H,44H,用单引号引起的字符或字符串,17,变 量,代表内存中的数据区,程序中视为存储器操作数 变量的属性: 变量所在段的段地址 变量单元地址与段首地址之 间的位移量。 字节型、字型和双字型,段 值,偏移量,类 型,18,表达式,算术运算 逻辑运算 关系运算 取值运算和属性运算 其它运算,19,算术运算和逻辑运算符,算术运算符 +,-,*,/,MOD 逻辑运算符 AND,OR,NOT,XOR 例: MOV AL,8 AND 4 MOV AL,8+4-1,20,关系运算符,表示关系是否成立的运算符 参与关系运算的必须是两个数值
5、 关系成立,结果=FFFFH 关系不成立,结果=0。 运算符: EQ,NE,LT,GT,LE,GE,例:MOV AL,3 LT 4,21,取值运算符,取得其后变量或标号的偏移地址 取得其后变量或标号的段地址,TYPE 取变量的类型 LENGTH 取所定义存储区的长度 SIZE 取所定义存储区的字节数,用于分析存储器操作数的属性,OFFSET,SEG,22,取值运算符例,MOV AX,SEG DATA MOV DS,AX MOV BX,OFFSET DATA LEA BX,DATA,等价于,23,取值运算符例,若BUFFER存储区用如下伪指令定义: BUFFER DW 200 DUP(0) 则:
6、 TYPE BUFFER 等于2 LENGTH BUFFER 等于200 SIZE BUFFER 等于400,24,属性运算符,用于指定其后存储器操作数的类型 运算符:PTR 例: MOV BYTR PTRBX,12H,25,其它运算符,方括号: 段重设符 段寄存器名: ,方括号中内容为操作数的偏移地址,用于修改默认的段基地址,26,4.2 伪指令,掌握: 伪指令的格式及实现的操作 伪指令的应用,27,伪指令,由汇编程序执行的“指令系统” 作用: 定义变量; 分配存储区 定义逻辑段; 指示程序开始和结束; 定义过程等。,28,常用伪指令,数据定义伪指令 符号定义伪指令 段定义伪指令 结束伪指令
7、 过程定义伪指令 宏命令伪指令,29,一、数据定义伪指令,用于定义数据区中变量的类型及大小 格式: 变量名 伪指令助记符 操作数, ;注释,表示符号地址,定义变量类型,定义变量值及区域大小,30,1. 数据定义伪指令助记符,DB 定义的变量为字节型 DW 定义的变量为字类型(双字节) DD 定义的变量为双字型(4字节) DQ 定义的变量为4字型(8字节) DT 定义的变量为10字节型,31,数据定义伪指令例,DATA1 DB 11H,22H,33H,44H DATA2 DW 11H,22H,3344H DATA3 DD 11H*2,22H,33445566H,以上变量在内存中的存放形式,32,
8、数据定义伪指令的几点说明,伪指令的性质决定所定义变量的属性; 定义字符串必须用DB伪指令 例: DATA1 DB ABCD,66H,A,B,C,D,41H,42H,43H,44H,66H,33,2. 重复操作符,作用: 为一个数据区的各单元设置相同的初值 目的: 常用于声明一个数据区 格式: 变量名 伪指令助记符 n DUP(初值,) 例: BW 20 DUP(0),34,3. “?”的作用,表示随机值,用于预留存储空间 MEM1 DB 34H,A,? DW 20 DUP(?),预留40个字节单元,每单元为随机值,随机数 占1个字节单元,35,数据定义伪指令例,M1 DB How are yo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 接口 技术 课件 清华大学
链接地址:https://www.31doc.com/p-2550044.html