欢迎来到天天文库
浏览记录
ID:58658711
大小:1014.50 KB
页数:179页
时间:2020-10-05
《西安电子科技大学微机原理第4章ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章汇编语言程序设计9/14/20211第4章汇编语言程序设计4.18086汇编语言的语句4.28086汇编语言中常数、标号、变量及表达式4.3汇编语言源程序结构4.4汇编语言程序设计4.5宏定义与宏调用4.6汇编语言程序的上机过程9/14/20212概念汇编语言是一种采用助记符表示的程序设计语言,即用助记符来表示指令的操作码和操作数,用标号或符号代表地址、常量或变量汇编语言源程序与其经过汇编所产生的目标代码程序之间有明显的一一对应关系,故也称汇编语言为符号语言用汇编语言编写程序能够直接利用硬件系统的特性占用内存空间少,执行速度快;源程序和所要解决问题的数学模型之间的关系不够直观,程序设计需
2、要较多的软件开发时间,也增加了程序设计过程中出错的可能性9/14/20213汇编程序的功能图4-1汇编程序的功能示意图9/14/20214汇编语言源程序翻译成机器语言程序任务根据用户的要求自动分配存储区域(包括程序区、数据区、暂存区等);自动地把各种进位制数转换成二进制数,把字符转换成ASCII码;计算表达式的值等;自动对源程序进行检查,给出错误信息(如非法格式,未定义的助记符、标号,漏掉操作数等)等。允许在源程序中把一个指令序列定义为一条宏指令的汇编程序,增加了宏指令、结构、记录等高级汇编语言功能。9/14/202154.18086汇编语言的语句指令可由汇编程序翻译成机器语言指令,汇编语言中
3、的指令与机器语言指令基本上是一一对应的,由CPU执行的语句,称为指令性语句;伪指令则不汇编成机器语言指令,仅仅在汇编过程中告诉汇编程序应如何汇编,称为指示性语句;宏指令是使用者利用上述基本语句自己定义的新的指令。9/14/202164.1.1指令性语句格式:[标号:]操作码[操作数1,][操作数2][;注释]标号:是指令语句的标识符操作码:指令助记符。指令规定的符号操作数:操作数可以根据指令的功能需要,可不带操作数,带1个操作数或2个操作数注释:是为方便程序人员阅读程序而加的说明9/14/202174.1.2指示性语句格式:[标识符(名字)]指示符(伪指令)表达式标识符:是一个用字母、数字或加
4、上下划线表示的一个符号,标识符定义的性质由伪指令指定指示符:指示符又称为伪指令,是汇编程序规定并执行的命令表达式:是常数、寄存器、标号、变量与一些操作符相结合的序列,可有数字表达式和地址表达式两种注释:同指令性语句9/14/20218伪指令伪指令(指示性语句)。是给汇编程序的命令,在汇编过程中由汇编程序进行处理9/14/20219伪指令分类数据定义伪指令符号定义伪指令段定义伪指令过程定义伪指令宏处理伪指令模块定义与连接伪指令处理器选择伪指令条件伪指令列表伪指令其他伪指令9/14/2021104.1.3有关属性段值属性。指存储器操作数的段起始地址,此值必须在一个段寄存器中,标号的段则总在CS寄存
5、器中。段内偏移量。16位无符号数,表示从段起始地址到该操作数所在位置之间的字节数。在当前段内给出变量的偏移量等于当前地址计数器的值,当前计数器的值可用“$”来表示。类型属性。标号的属性用来指出该标号在本段内引用还是在其他段中引用,段内引用,为NEAR,指针长度为2字节;段间引用,为FAR,指针长度为4字节。变量的类型属性用来指出该变量所保留的字节数,主要有BYTE(字节型)、WORD(字型(2字节))或DWORD(双字型(4字节))等。9/14/2021114.28086汇编语言中常数、标号、变量及表达式4.2.1常数、标号和变量4.2.2符号定义伪指令语句4.2.3表达式9/14/20211
6、24.2.1常数、标号和变量汇编语言中数据项有常量、标号和变量3种类型9/14/2021131.常数常数就是指令中出现的那些固定值数值常数字符串常数9/14/202114数值常数B:表示二进制数。例如,10110011B。D:表示十进制数。例如,179D或179。O:表示八进制数。例如,263O。H:表示十六进制数。例如,B3H。汇编语句中的数值常数的第一位必须是数字,否则汇编时将被看成是标识符例如:常数B3H在语句中应写成0B3H9/14/202115字符串常数是由单引号‘’括起来的一串字符例如:‘ABCDEFG’和‘179’。单引号内的字符在汇编时都以ASCII的代码形式存放在存储
7、单元中。其ASCII代码分别为41H、42H、43H、44H,…,4BH和31H、37H、39H。字符串最长允许有255个字符9/14/2021162.标号是用符号表示的地址,用以指示此指令语句所在的地址3个属性:段地址:是指标号对应的指令首字节所在的段地址偏移地址:是指标号对应的指令首字节所在段内的偏移地址类型:NEAR和FAR类型。标号如定义成NEAR类型,表示标号仅在本段内被引用;如定义成F
此文档下载收益归作者所有