语言程序设计2资料讲解.ppt
《语言程序设计2资料讲解.ppt》由会员分享,可在线阅读,更多相关《语言程序设计2资料讲解.ppt(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer汇编语言程序设计2第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer指令指令:注意:立即数前加“#”,后面带“B”、“D”、“H”分别表示“二进制”、“十进制”、“十六进制”指令中rel、addr16、addr11常用标号地址表示指令中操作数可带加、减运算符的表达式“$”符号表示该转移指令机器码所在ROM的首地址标号以字母开头、不超过8个字符,不允许使用保留字、寄存器
2、名及伪指令字符4.1 4.1 汇编语言程序设计基础汇编语言程序设计基础 汇编语言汇编语言11/25/20222第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer伪指令伪指令伪指令:伪指令伪指令机器指令机器指令一一对应一一对应特点:伪指令是由汇编程序识别,并完成相应的功能功能:在汇编过程中对数据的存储环境或汇编实施一定的控制,如:伪指令给程序分配一定的存储区、定义符号、指定暂存数据的RAM区等 4.1 4.1 汇编语言程序设计基础汇编语言程序设计基础 汇编语言汇编语言11/25/20223第第4 4章章 汇
3、编语言程序设计汇编语言程序设计The Principle and Application Of MicrocomputerDATA(赋值)伪指令:(赋值)伪指令:格式:字符名 DATA 表达式DATA伪指令与EQU伪指令的区别:EQU定义的字符名必须“先定义后使用”,而DATA定义的“字符名”没有这种限制DATA伪指令可放在程序的任何位置,比EQU伪指令灵活 功能:将右边“表达式”的值赋给左边的“字符名”注意:这里的表达式允许是一个数据或地址,也可以是包含被定义的“字符名”在内的表达式,但不能是汇编符号,如R0R7等 4.1 4.1 汇编语言程序设计基础汇编语言程序设计基础 汇编语言汇编语言1
4、1/25/20224第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of MicrocomputerORG(起始汇编)伪指令(起始汇编)伪指令:格式:ORG 功能:把以下语句定义的内存数据或程序,从表达式指定的起点(偏移地址)开始连续存放,直至遇到新的ORG指令。表达式值是一个无符号数格式:END功能:结束汇编语言源程序的标志用途:常用于汇编语言源程序末尾,表示汇编结束注意:一个源程序只能有一个END命令,且置于程序的最后。在END以后所写的指令,汇编程序都不予处理 END(结束汇编)伪指令:4.1 4.1 汇编语言程序设计基础汇编语
5、言程序设计基础 汇编语言汇编语言11/25/20225第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of MicrocomputerBIT(位地址赋值)伪指令:(位地址赋值)伪指令:格式:字符名 BIT 位地址功能:将位地址赋予BIT前面的字符名,经赋值后可用该字符名代替BIT后面的位地址注意:被定义后,“字符名”是一个符号位地址有些汇编程序不允许使用BIT伪指令,用户只能用EQU伪指令定义位地址变量,但是用这种方式定义时,EQU语句右边只能是实际的物理地址,而不能使符号位地址 如:K1 BIT 20HKK BIT K1 X2 EQ
6、U 6DHX2 EQU K14.1 4.1 汇编语言程序设计基础汇编语言程序设计基础 汇编语言汇编语言11/25/20226第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer1.顺序结构顺序结构程序设计程序设计特点:执行程序的方式是“从头到尾”逐条执行指令语句,直至程序结束例4-1:拆字程序。将30H单元内的两位BCD码拆开并转换成ASCII码,将转换后的ASCII码放在31H和32H单元,并让低位ASCII码放在32H单元 程序:ORG2000HMOVA,30H ANLA,#0FHADDA,#30H M
7、OV32H,AMOVA,30HSWAPA ANLA,#0FHADDA,#30HMOV31H,ASJMP$END 4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 顺序结构程序设计顺序结构程序设计4.2 MCS51汇编语言程序设计汇编语言程序设计11/25/20227第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer例例4-2:将:将60H单元中的单元中的8位无符号数转换成三位位无符号数转换成三位BCD码,码,并存放在并存放在BAI(百位)、(百位)、SHI(十位)和(十位)和GE(个位
8、)三个(个位)三个单元中单元中 MOV SHIW,A MOV GEW,BSJMP$END程序:ORG 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汇编语言程序设计汇编语言程序设计 顺序结构程序设计顺序结构程序设计11/25/20228第第4 4章章 汇编语言程序设计汇编语言程序设计The Principl
9、e and Application Of Microcomputer例例4-3:将两个三字节:将两个三字节无符号数无符号数相加,其中一个加数在内部相加,其中一个加数在内部RAM的的32H、31H和和30H单元;另一个加数在内部单元;另一个加数在内部RAM的的35H、34H和和33H单元,要求相加后的和存入单元,要求相加后的和存入32H、31H和和30H单元,进位存入位寻址单元,进位存入位寻址区的区的20H单元中单元中 MOVR0,A INCR0 INCR1MOVA,R0ADDC A,R1MOVR0,AMOV20H,CEND程序:ORG2000HCLRCMOVR0,30HMOVR1,33HMOV
10、A,R0ADDA,R1MOVR0,AINCR0INCR1MOVA,R0ADDC A,R14.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 顺序结构程序设计顺序结构程序设计11/25/20229第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer例例10-24:16位数求补位数求补。已知。已知16位二进制数在位二进制数在R1、R0中,中,将此将此16位二进制数求补,求补结果存入内部位二进制数求补,求补结果存入内部RAM 31H、30H单元单元 程序:ORG2000HCLRCMOVA,R0;
11、取低位字节送入ACPLA;求反ADDA,#01H;加1MOV30H,A;存低位字节补码MOVA,R1;取高位字节送ACPLA;去反ADDC A,#00H;加进位MOV31H,A;存高位字节补码END4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 顺序结构程序设计顺序结构程序设计11/25/202210第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer2.分支结构分支结构程序设计程序设计利用条件转移指令,使程序执行到某一指令后,根据条件(即上面运算的情况)是否满足,改变程序执行的次序特
12、点特点:先用:先用比较指令比较指令或或数据操作数据操作及及位测指令位测指令等改变标志等改变标志寄存器各个标志位,然后用条件转移指令进行分支寄存器各个标志位,然后用条件转移指令进行分支设计要点:先建立可供条件转移指令测试的条件 选用合适的条件转移指令,如:JZ,JNZ,CJNE,DJNZ等/JC,JNC,JB,JNB,JBC等 在转移的目的地址处设定标号4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 分支结构程序设计分支结构程序设计11/25/202211第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Mic
13、rocomputer例例10-25:求单字节:求单字节有符号有符号二进制数的补码二进制数的补码程序:ORG 2000HJNB ACC.7,NEG ;(A)0,不需转换MOV C,ACC.7 ;保存符号位MOV 00H,C ;保存符号位CPL AADD A,#1MOV C,00HMOV ACC.7,C ;恢复符号位NEG:SJMP$END4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 分支结构程序设计分支结构程序设计11/25/202212第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomput
14、er例例10-26:已知:已知VAR单元中有一自变量单元中有一自变量X,请按如下条件,请按如下条件编出求函数值编出求函数值Z并将它存入并将它存入FUN单元的程序单元的程序 Z=X0X=0X010-1AXA=0?A0?A1A1YYN存数存数N方法一:先分支后赋值 AXXA=0?A0?R11R11存数存数YNNY方法二:先赋值后分支4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 分支结构程序设计分支结构程序设计11/25/202213第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer方法
15、一方法一:先分支后赋值:先分支后赋值程序:ORG 2000HVAR DATA 40HFUN DATA 41HSTART:MOV A,VARJZ SAVEJNB ACC.7,ZHENMOV A,#0FFH SJMP SAVEZHEN:MOV A,#01H SAVE:MOV FUN,A SJMP$ENDAXA=0?A0?A1A1YYN存数存数N4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 分支结构程序设计分支结构程序设计11/25/202214第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomp
16、uterORG 2000HVAR DATA 40HFUN DATA 41HSTART:MOV A,VAR;自变量XACJNEA,#0,NEQ;若X0,则转NEQ SJMP SAVENEQ:JNB ACC.7,ZHEN;若X0,则转ZHENMOVA,#0FFH ;若X0?R11R11存数存数YNNY流程图:流程图:程序:ORG 2000HVAR DATA 40HFUN DATA 41HSTART:MOV A,VARJZ SAVEMOV R1,#0FFH JB ACC.7,NEGMOV R1,#01HSJMP SAVENEG:MOV A,R1 SAVE:MOV FUN,A SJMP$END4.2
17、MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 分支结构程序设计分支结构程序设计11/25/202216第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer例例10-27:两个:两个带符号数带符号数分别存于分别存于ONE和和TWO单元,试编程比较大单元,试编程比较大小,并将大的数存入小,并将大的数存入MAX单元单元 开始开始 XY?X-Y0?OV=1?MAXXXOV=1?MAXYY结束结束YNNYYYNN流程图流程图:4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 分支结
18、构程序设计分支结构程序设计11/25/202217第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer分析:两个带符号数的比较可将两数相减后的正负和溢出标志结合在一起判断 1)若X-Y为正,则 OV=0,XY OV=1,XY2)若X-Y为负,则 OV=0,XY同号:对两个正数相减或者两个负数相减都不会溢出(OV=0)。若差为正则XY;若差为负则X0,OV1,则YX SJMP XMAX;若X-Y0,OV0,则XYNEG:JB OV,XMAX;X-YYYMAX:MOV A,TWO;YXSJMP SAVEXMAX
19、:MOV A,ONE;XYSAVE:MOV MAX,A;送较大值至MAXSJMP$END4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 分支结构程序设计分支结构程序设计11/25/202219第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer例例10-28:设计可多达:设计可多达128路分支出口的转移程序路分支出口的转移程序 分析:设128个出口分别转向128段小程序,它们的首地址依次为addr00、addr01、addr02、addr03、addr7F。要转移到某分支的信息存放在工
20、作寄存器R2中,则散转程序:ORG 1000HEQU TAB 2000HMOV DPTR,#TAB MOV A,R2 RL A ;将出口分支信息乘2,因为散转表中的转移 JMP A+DPTR;指令均为2字节指令,若为3字节指令应乘3TAB:AJMP addr00 AJMP addr01 AJMP addr02 AJMP addr7F4.2 MCS4.2 MCS5151汇编语言程序设计汇编语言程序设计 分支结构程序设计分支结构程序设计11/25/202220第第4 4章章 汇编语言程序设计汇编语言程序设计The Principle and Application Of Microcomputer
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 资料 讲解
限制150内