1. 首页
  2. 文档大全

第4章 汇编语言程序设计

上传者:dream****gning 2022-06-12 02:46:46上传 PPT文件 422KB
第4章 汇编语言程序设计_第1页 第4章 汇编语言程序设计_第2页 第4章 汇编语言程序设计_第3页

《第4章 汇编语言程序设计》由会员分享,可在线阅读,更多相关《第4章 汇编语言程序设计(40页珍藏版)》请在文档大全上搜索。

1、第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer2022-5-301第第4章章 汇编语言程序设计汇编语言程序设计第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer2022-5-3024.1 汇编语言程序设计基础汇编语言程序设计基础1. 汇编语言汇编语言汇编语言源程序源程序目标程序目标程序汇编程序汇编程序汇编汇编4.1 4.1 汇编语言程序设计基础汇编语言程序设计基础 汇编语言汇编语言第第4 4章章 汇编语言程序设计

2、汇编语言程序设计The Principle and Application Of Microcomputer2022-5-303标号:指令助记符操作数;注释,指令指令:注意:立即数前加“#”,后面带“B”、“D”、“H”分别表示“二进制”、 “十进制”、“十六进制”指令中rel、addr16、addr11常用标号地址表示指令中操作数可带加、减运算符的表达式“$”符号表示该转移指令机器码所在ROM的首地址标号以字母开头、不超过8个字符,不允许使用保留字、寄存器名及伪指令字符4.1 4.1 汇编语言程序设计基础汇编语言程序设计基础 汇编语言汇编语言第第4 4章章 汇编语言程序设计汇编语言程序设计T

3、he Principle and Application Of Microcomputer2022-5-304标号:指令助记符操作数;注释,伪指令伪指令伪指令:伪指令伪指令机器指令机器指令一一对应一一对应特点:伪指令是由汇编程序识别,并完成相应的功能功能:在汇编过程中对数据的存储环境或汇编实施一定的控制,如:伪指令给程序分配一定的存储区、定义符号、指定暂存数据的RAM区等 4.1 4.1 汇编语言程序设计基础汇编语言程序设计基础 汇编语言汇编语言第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer2022-

4、5-305DATA(赋值)伪指令:(赋值)伪指令: 格式:字符名 DATA 表达式DATA伪指令与EQU伪指令的区别:EQU定义的字符名必须“先定义后使用”,而DATA定义的“字符名”没有这种限制DATA伪指令可放在程序的任何位置,比EQU伪指令灵活 功能:将右边“表达式”的值赋给左边的“字符名”注意:这里的表达式允许是一个数据或地址,也可以是包含被定义的“字符名”在内的表达式,但不能是汇编符号,如R0R7等 4.1 4.1 汇编语言程序设计基础汇编语言程序设计基础 汇编语言汇编语言第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of

5、 Microcomputer2022-5-306ORG(起始汇编)伪指令(起始汇编)伪指令 :格式:ORG 功能:把以下语句定义的内存数据或程序,从表达式指定的起点(偏移地址)开始连续存放,直至遇到新的ORG指令。表达式值是一个无符号数格式:END功能:结束汇编语言源程序的标志用途:常用于汇编语言源程序末尾,表示汇编结束注意:一个源程序只能有一个END命令,且置于程序的最后。在END以后所写的指令,汇编程序都不予处理 END(结束汇编)伪指令 :4.1 4.1 汇编语言程序设计基础汇编语言程序设计基础 汇编语言汇编语言第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle

6、and Application Of Microcomputer2022-5-307BIT(位地址赋值)伪指令:(位地址赋值)伪指令: 格式:字符名 BIT 位地址功能:将位地址赋予BIT前面的字符名,经赋值后可用该字符名代替BIT后面的位地址注意:被定义后,“字符名”是一个符号位地址有些汇编程序不允许使用BIT伪指令,用户只能用EQU伪指令定义位地址变量,但是用这种方式定义时,EQU语句右边只能是实际的物理地址,而不能使符号位地址 如:K1 BIT 20HKK BIT K1 X2 EQU 6DHX2 EQU K14.1 4.1 汇编语言程序设计基础汇编语言程序设计基础 汇编语言汇编语言第第4

7、 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer2022-5-3081. 顺序结构顺序结构程序设计程序设计特点:执行程序的方式是“从头到尾”逐条执行指令语句,直至程序结束例4-1: 拆字程序。 将30H单元内的两位BCD码拆开并转换成ASCII码,将转换后的ASCII码放在31H和32H单元,并让低位ASCII码放在32H单元 程序:ORG2000HMOVA,30H ANLA,#0FHADDA,#30H MOV32H,AMOVA,30HSWAPA ANLA,#0FHADDA,#30HMOV31H,ASJMP$

8、 END 4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 顺序结构程序设计顺序结构程序设计4.2 MCS51汇编语言程序设计汇编语言程序设计第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer2022-5-309例例4-2:将:将60H单元中的单元中的8位无符号数转换成三位位无符号数转换成三位BCD码,码,并存放在并存放在BAI(百位)、(百位)、SHI(十位)和(十位)和GE(个位)三(个位)三个单元中个单元中 MOV SHIW,A MOV GEW,BSJMP $ END程序:ORG

9、 2000HBAIW DATA 40HSHIW DATA 41HGEW DATA 42HMOVA,60H ;取数MOVB,#100 ;除数为100DIV AB ;确定百位数,位于A中MOV BAIW,A ;存百位数MOV A,B ;余数送AMOV B,#10 ;除数为10DIV AB ;确定十位数和个位数4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 顺序结构程序设计顺序结构程序设计第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer2022-5-3010例例4-3:将两个三字节:将两

10、个三字节无符号数无符号数相加,其中一个加数在内部相加,其中一个加数在内部RAM的的32H、31H和和30H单元;另一个加数在内部单元;另一个加数在内部RAM的的35H、34H和和33H单元,要求相加后的和存入单元,要求相加后的和存入32H、31H和和30H单元,进位存入位寻址单元,进位存入位寻址区的区的20H单元中单元中 MOVR0,A INCR0 INCR1MOVA,R0ADDC A,R1MOVR0,AMOV20H,CEND程序:ORG2000HCLRCMOVR0,30HMOVR1,33HMOVA,R0ADDA,R1MOVR0,AINCR0INCR1MOVA,R0ADDC A,R14.2 M

11、CS4.2 MCS5151汇编语言程序设计汇编语言程序设计 顺序结构程序设计顺序结构程序设计第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer2022-5-3011例例10-24:16位数求补位数求补。已知。已知16位二进制数在位二进制数在R1、R0中,中,将此将此16位二进制数求补,求补结果存入内部位二进制数求补,求补结果存入内部RAM 31H、30H单元单元 程序:ORG2000HCLRCMOVA,R0;取低位字节送入ACPLA;求反ADDA,#01H;加1MOV30H,A;存低位字节补码MOVA,R


文档来源:https://www.renrendoc.com/paper/212618884.html

文档标签:

下载地址