程序题:设计一个具有 128 路分支程序实验的散转程序

【图文】单片机复习_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
单片机复习
上传于|0|0|文档简介
&&单片机相关
大小:169.00KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
汇编程序设计教材.ppt 44页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
需要金币:350 &&
你可能关注的文档:
··········
··········
第四章 汇编语言程序设计4.1.1汇编语言程序设计步骤使用汇编语言设计一个程序大致上可分为以下几个步骤。 (1)分析题意,明确要求。 (2)确定算法。(3)画程序流程图,用图解来描述和说明解题步骤。???图4.1常用的流程图符号(4)分配内存工作单元,确定程序与数据区的存放地址。(5)编写源程序(6)程序优化。(7)上机调试、修改和最后确定源程序。4.2.2伪指令语句伪指令并不是真正的指令,也不产生相应的机器码,它们只是在计算机将汇编语言转换为机器码时,指导汇编过程,告诉汇编程序如何汇编。下面介绍一些MCS-51汇编程序常用的伪指令。(1)汇编起始伪指令ORG格式:[标号:]ORG16位地址功能:规定程序块或数据块存放的起始地址。如:ORG8000HSTART:MOVA,#30H……该指令规定第一条指令从地址8000H单元开始存放,即标号START的值为8000H。(2)汇编结束伪指令END格式:[标号:]END[表达式]功能:结束汇编。例如:ORG2000H START:MOVA,#00H……END(ENDSTART)表示标号START开始的程序段结束。(3)等值指令EQU格式:字符名称EQU项例如,TESTEQUR0 MOVA,TEST(4)定义字节指令DB格式:[标号:]DB8位二进制数表DB命令是从指定的地址单元开始,定义若干个8位内存单元的内容。例如,ORG1000HTAB;DB23H,73,“6”,“B”TABl:DB110B 以上伪指令经汇编以后,将对从1000H开始的若干内存单元赋值:(1000H)=23H(1001H)=49H(1002H)=36H(1003H)=42H(1004H)=06H其中36H和42H分别是字符6和B的ASCII码,其余的十进制数(73)和二进制数(110B)也都换算为十六进制数了。(5)定义字命令DW格式:[标号:]DW16位二进制数表例如,ORG1000HTAB:DW1234H,0ABH,10 汇编后: (1000H)=12H(1001H)=34H (1002H)=00H(1003H)=ABH(1004H)=00H(1005H)=0AH DB、DW伪指令都只对程序存储器起作用,不能用来对数据存储器的内容进行赋值或进行其它初始化的工作。4.2顺序程序设计顺序结构程序是一种最简单、最基本的程序(也称为简单程序),它是一种无分支的直线形程序,按照程序编写的顺序依次执行。【例4-1】两个8位无符号数相加,和仍为8位。假设两个无符号数X1,X2分别存放于内部RAM60H、61H单元中,求其和并将和送入62H单元。程序如下:【例4-2】两个无符号双字节数相加。设被加数存放在内部存储器30H(高位字节)、31H(低位字节)单元,加数存放在内部存储器40H(高位字节)、41H(低位字节)单元,和存入30H(高位字节)、31H(低位字节)单元。程序如下:【例4-3】编写16位二进制数求补程序二进制数的求补可归结为“求反加1”的过程,求反可用CPL指令实现;加1时应注意,加1只能加在低8位的最低位上。因为现在是16位数,有两个字节,因此要考虑进位问题,即低8位取反加1,高8位取反后应加上低8位加1时可能产生的进位,还要注意这里的加1不能用INC指令,因为INC指令不影响CY标志。程序如下:【例4-4】编程将20H单元中的8位无符号二进制数转换成3位BCD码,并存放在22H(百位)和21H(10位,个位)两个单元中。程序如下:查表[例4-5]一变量放在内部RAM的20H,取值为00H-05H。编写程序,求该变量的平方值,将结果放片内21HORG1000HSTART:MOVDPTR,#2000H;orMOVDPTR,#TABLEMOVA,20HMOVCA,@A+DPTRMOV21H,ASJMP$ORG2000HTABLE:DB00,01,04,09,16,25END4.3分支程序设计图4.2分支程序结构?图4.2(a)结构使用条件转移指令来实现分支,当给出的条件成立时,执行程序段A,否则执行程序段B。图4.2(b)结构使用散转指令JMP来实现多分支转移,它首先将分支程序按序号的值来实现分支转移。【例4-6】设补码X放在内部RAM30H单元中,函数Y与X有如下的关系式:试编写程序,根据X的值求出Y,并放回原单元。解取出X后先做取值范围的判断,用累加器A状态转移指令判断X是否为0,用位状态转移指令判断X是大于0还是小于0。程序流程图如图4.3所示。程序如下:MOVA,30HJZZER0JNBACC.7,PLUSADDA,#5MOV30H,APLUS:SJMP$ZERO:MOV30H,#20HSJMP$END 【例4-7】内部RAM40H和41H单元中各有一无符号数,比较其大小,将大数存放于内部RAM60H单元
正在加载中,请稍后...第四章 80C51单片机汇编语言程序设计.ppt -max上传文档投稿赚钱-文档C2C交易模式-100%分成比例文档分享网
第四章 80C51单片机汇编语言程序设计.ppt
文档名称:第四章 80C51单片机汇编语言程序设计.ppt
格式:ppt&&&大小:6.72MB&&&总页数:1
可免费阅读页数:1页
下载源文档需要:7元人民币
预览与实际下载的一致,文档内容不会超过预览的范围,下载前请务必先预览,自行甄别内容是否完整、是否存在文不对题等情况(本网站为文档分享平台性质),一旦付费下载,本站不支持退款
我已知晓:实际下载内容以预览为准!
文档介绍:第四章汇编语言程序设计本章结构4.1单片机程序设计语言概述4.5单片机汇编语言伪指令4.4汇编语言编辑和汇编4.2汇编语言程序的基本结构形式顺序程序结构分支程序结构循环程序结构4.3汇编语言程序设计举例2.汇编语言:由字母,数字符号组成,翻译成机器语言再由CPU执行,面向机器,编译后执行速度接近机器语言,易读,不易错,但必须熟悉指令系统,移植性差;程序精细、具体,结构紧凑,运行时间精确,高效。运算量大,实时性要求高时常用汇编。、汇编语言特点及其格式P771、汇编语言的语句格式标号:操作码操作数;注释BEGIN:MOVA,#50H;将立即数50H给A1)标号:用户定义的符号地址,便于查询和修改程序,在汇编时自动生成与该语句翻译成机器码存放在ROM单元地址相对应的16bit数。ORG0000H;伪指令定义起始地址LJMPMAIN;跳转至主程序ORG0030HMAIN:MOVA,#0F0H;主程序入口……、汇编语言特点及其格式P771、汇编语言的语句格式标号:操作码操作数;注释BEGIN:MOVA,#50H;将立即数50H给A1)标号命名规定:1~8个ASCII码,首字符为字母;不可用已经定义的符号作为标号,如助记符等;标号后跟着冒号“:”;同标号在一个程序只能定义一次;标号可以省略不用,指令前是否有标号取决于本程序其他语句是否要访问此指令。、汇编语言特点及其格式P771、汇编语言的语句格式标号:操作码操作数;注释BEGIN:MOVA,#50H;将立即数50H给A1)标号举例:错误的标号正确的标号1BT:LooP2:BEGINSTAB:TB+5T:TAB_CE:ADD:Q$:2)操作码:规定指令所执行的操作,汇编指令中不可缺少的部分,在汇编时自动生成机器码。、汇编语言特点及其格式P771、汇编语言的语句格式标号:操作码操作数;注释BEGIN:MOVA,#50H;将立即数50H给A读武汉市周围地区图.回答下列问题. (1)首先这里是 江与 江的汇合处.自古以来.有大量的物流.人流在这里集散.中转.另外.这里又有我国重要的南北铁路大动脉 线通过.因此.武汉的交通运输非常便利. (2)武汉市紧邻我国重要的商品粮.棉基地 平原.雄厚的农业基础为城市发展奠定了基础.另外.商品棉的生产.还使武汉市成为我国重要的 工业中心. (3) 题目和参考答案——精英家教网——
成绩波动大?难提高?听顶级名师视频辅导,
& 题目详情
读武汉市周围地区图,回答下列问题。
(1)首先这里是________江与________江的汇合处,自古以来,有大量的物流、人流在这里集散、中转。另外,这里又有我国重要的南北铁路大动脉  &&&
线通过,因此,武汉的交通运输非常便利。
(2)武汉市紧邻我国重要的商品粮、棉基地________平原,雄厚的农业基础为城市发展奠定了基础。另外,商品棉的生产,还使武汉市成为我国重要的________工业中心。
(3)从能源供应上看,武汉距我国目前建成的大型水电站________较近,充足的电能为其发展提供了动力保证。
(4)武汉东南部大冶附近有丰富的铁矿资源,这为武汉发展________工业提供了原料供应。
(5)解放后,武汉被定为湖北省省会,行政中心很快成为区域的________中心,工业、交通、城市建设迅速发展。
答案:略解析:
(1)汉  长  京广
(2)江汉  纺织
(3)葛洲坝
(5)经济提示:
本题以武汉的区位及其发展为切入点,综合考查中部地带,尤其是江汉平原地区的自然和人文状况。影响城市的区位因素有地形、气候、河流、资源、交通、政治等因素。本题以武汉为例考核学生对城市区位因素的认识。回答第(1)题河流汇入处的城市时,因为是支流汇入主流,所以一般把支流名称放在前面。回答第(3)题,要注意抓住题目中“目前建成的大型的水电站”来回答,并且要注意葛洲坝地名的正确写法。
请在这里输入关键词:
科目:高中地理
读武汉市周围地区图,回答下列问题。
(1)首先这里是________江与________江的汇合处,自古以来,有大量的物流、人流在这里集散、中转。另外,这里又有我国重要的南北铁路大动脉  &&&
线通过,因此,武汉的交通运输非常便利。
(2)武汉市紧邻我国重要的商品粮、棉基地________平原,雄厚的农业基础为城市发展奠定了基础。另外,商品棉的生产,还使武汉市成为我国重要的________工业中心。
(3)从能源供应上看,武汉距我国目前建成的大型水电站________较近,充足的电能为其发展提供了动力保证。
(4)武汉东南部大冶附近有丰富的铁矿资源,这为武汉发展________工业提供了原料供应。
(5)解放后,武汉被定为湖北省省会,行政中心很快成为区域的________中心,工业、交通、城市建设迅速发展。
精英家教网新版app上线啦!用app只需扫描书本条形码就能找到作业,家长给孩子检查作业更省心,同学们作业对答案更方便,扫描上方二维码立刻安装!
请输入姓名
请输入手机号您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
MCS-51单片机指令系统及汇编语言程序设计-2课件.ppt 109页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
需要金币:150 &&
MCS-51单片机指令系统及汇编语言程序设计-2课件.ppt
你可能关注的文档:
·········
·········
§3-4逻辑运算类指令逻辑运算及移位指令共有24条,其中逻辑指令有“与”、“或”、“异或”、累加器A清零和求反20条,移位指令4条。1.逻辑“与”运算指令逻辑“与”运算指令共有如下6条,其助记符为ANL。逻辑“与”运算指令是将两个指定的操作数按位进行逻辑“与”的操作。2.逻辑“或”运算指令逻辑“或”运算指令共有如下6条指令,其助记符为ORL。逻辑“或”指令将两个指定的操作数按位进行逻辑“或”操作。它常用来使字节中某些位置“1”,欲保留(不变)的位用“0”与该位相或,而欲置位的位则用“1”与该位相或。例如:若(A)=C0H,(R0)=3FH,(3F)=0FH执行指令:ORLA,@R0;(A)←(A)∨((R0))结果为:(A)=CFH。又如:根据累加器A中4~0位的状态,用逻辑与、或指令控制P1口4~0位的状态,P1口的高3位保持不变。ANLA,#B ;屏蔽A的高3位ANLP1,#B ;保留P1的高3位ORLP1,A
;使P14~0按A4~0置位若上述程序执行前:(A)=B5H=B,(P1)=6AH=B,则执行程序后:(A)=15H=B,(P1)=75H=B。3.逻辑“异或”运算指令“异或”运算是当两个操作数不一致时结果为1,两个操作数一致时结果为0,这种运算也是按位进行,共有如下6条指令,其助记符为XRL。逻辑“异或”指令常用来对字节中某些位进行取反操作,欲某位取反则该位与“1”相异或;欲保留某位则该位与“0”相异或。还可利用异或指令对某单元自身异或,以实现清零操作。以上逻辑“与”、“或”、“异或”各6条指令有如下共同的特点:(1)逻辑“与”ANL、“或”ORL、“异或”XRL运算指令除逻辑操作功能不同外,三者的寻址方式相同,指令字节数相同,机器周期数相同。(2)ANL、ORL、XRL的前两条指令的目的操作数均为直接地址方式,可很方便地对内部RAM的00H~FFH任一单元或特殊功能寄存器的指定位进行清零、置位、取反、保持等逻辑操作。(3)ANL、ORL、XRL的后4条指令,其逻辑运算的目的操作数均在累加器A中,且逻辑运算结果保存在A中。CLRA;(A)←00H,E4CPLA;(A)←(A),F4第1条是对累加器A清零指令,第2条是把累加器A的内容取反后再送入A中保存的对A求反指令,它们均为单字节指令。若用其它方法达到清零或取反的目的,则至少需用双字节指令。例1:双字节数求补码。解:对于一个16位数,R3存高8位,R2存低8位,求补结果仍存R3、R2。求补的参考程序如下:循环左移RLA ;(An+1)←(An),(A0)←(A7),23带进位位循环左移RLCA ;(An+1)←(An),(CY)←(A7),(A0)←(CY),33循环右移RRA ;(An)←(An+1),(A7)←(A0),03带进位位循环右移RRCA ;(An)←(An+1),(CY)←(A0),(A7)←(CY),13另外,值得一提的是在前述数据传送类指令中有一条累加器A的内容半字节交换指令:SWAPA ;(A)7~4(A)3~0,C4它实际上相当于执行循环左移指令4次。该指令在BCD码的变换中是很有用的,如3.3.2节的例4。例如:设(A)=43H,(CY)=0,则执行指令:RLA;RLCA;RRA;RRCA;结果为:(A)=86H,(CY)=0(A)=0CH,(CY)=1(A)=06H,(CY)=1(A)=83H,(CY)=0例2:16位数的算术左移。16位数在内存中低8位存放在M1单元,高8位存放在?M1+1?单元。解:所谓算术左移就是将操作数左移一位,并使最低位补充0,相当于完成16位数的乘2操作,故称算术左移。参考程序如下:§3-5控制转移类指令控制转移类指令共计17条,可分为无条件转移指令、条件转移指令、子程序、中断调用及返回指令。有了丰富的控制转移类指令,就能很方便地实现程序的向前、向后跳转,并根据条件分支运行、循环运行、调用子程序等。1.无条件转移指令无条件转移指令有如下4条指令,它们提供了不同的转移范围和寻址方式:LJMPaddr16 ;(PC)←addr16,02addr15~8?addr7~0AJMPaddr11 ;(PC)←(PC)+2,addr10~800001addr7~0?(PC)10~0←addr11SJMP(PC)←(PC)+2+rel,80relJMP@A+DPTR;(PC)←(A)+DPTR,73(2)AJMP称为绝对转移指令,双字节指令。它的机器代码是由11位直接地址addr11和指令特有操作码00001,按下列分布组成的:该指令执行后,程序转移的目的地址是由AJMP指令所在位置的地址PC值加上该指令字节数2,构
正在加载中,请稍后...

我要回帖

更多关于 单源最短路径问题分支 的文章

 

随机推荐