汇编语言程序设计--课件

上传人:无*** 文档编号:241540411 上传时间:2024-07-03 格式:PPT 页数:35 大小:719KB
返回 下载 相关 举报
汇编语言程序设计--课件_第1页
第1页 / 共35页
汇编语言程序设计--课件_第2页
第2页 / 共35页
汇编语言程序设计--课件_第3页
第3页 / 共35页
点击查看更多>>
资源描述
第4章 汇编语言程序设计 算术运算程序设计算术运算程序设计汇编语言程序的结构汇编语言程序的结构 汇编语言概述汇编语言概述 非数值操作程序设计非数值操作程序设计1ppt课件4.1 4.1 汇编语言概述汇编语言概述一、汇编语言与汇编的概念一、汇编语言与汇编的概念机器语言:机器语言:用指令的二进制码编写的程序用指令的二进制码编写的程序 CPU能识别,执行速度快能识别,执行速度快 难记、难读、难写、难查难记、难读、难写、难查汇编语言:汇编语言:用指令助记符编写的程序用指令助记符编写的程序机器语言机器语言汇编语言汇编语言翻译(汇编)翻译(汇编)源程序源程序目标程序目标程序2ppt课件精品资料你怎么称呼老师?如果老师最后没有总结一节课的重点的难点,你是否会认为老师的教学方法需要改进?你所经历的课堂,是讲座式还是讨论式?教师的教鞭“不怕太阳晒,也不怕那风雨狂,只怕先生骂我笨,没有学问无颜见爹娘”“太阳当空照,花儿对我笑,小鸟说早早早”汇编语言特点汇编语言特点 程序精练,执行速度快,适合于实时控制程序精练,执行速度快,适合于实时控制 处理接口技术、中断技术很方便处理接口技术、中断技术很方便 需要熟悉硬件,编程有一定难度需要熟悉硬件,编程有一定难度高级语言高级语言 面向对象和问题,接近自然语言,易学易用面向对象和问题,接近自然语言,易学易用 独立于机器独立于机器 一条语句可对应一段汇编语言程序一条语句可对应一段汇编语言程序既然有了高级语言,为什么还要学习汇编语言?5ppt课件二、汇编语言源程序的格式二、汇编语言源程序的格式MCS-51MCS-51的汇编语句采用典型的四分段格式:的汇编语句采用典型的四分段格式:标号段标号段 操作码段操作码段 操作数段操作数段 注释段注释段标号的构成原则是什么?6ppt课件注释段起什么作用?7ppt课件三、伪指令三、伪指令起始指令:起始指令:ORG汇编结束:汇编结束:END 指导汇编过程的命令8ppt课件定义字节:DB 定义若干个8位数据例:例:ORG 3000HTABL:DB 30H,31H,2,A汇编后:汇编后:TABL=3000H(3000H)=30H,(3001H)=31H,(3002H)=32H,(3003H)=41H,9ppt课件定义字:DW 定义若干个16位数据汇编后:汇编后:TAB=3010H(3010H)=12H(3011H)=34H(3012H)=00H(3013H)=56H 例:例:ORG 3010HTAB:DW 1234H,56H10ppt课件赋值:EQU 将一个数或符号赋给变量11ppt课件位地址赋值:BIT12ppt课件四、源程序的汇编四、源程序的汇编 第一次汇编:查出机器码,并对应地址列第一次汇编:查出机器码,并对应地址列表表 第二次汇编:计算偏移量第二次汇编:计算偏移量rel什么叫汇编?有几种汇编的方法?1.手工汇编手工汇编13ppt课件14ppt课件rel=目标地址源地址3(对3字节指令)15ppt课件2.机器汇编利用专用软件(称为汇编程序),由计算机完成汇利用专用软件(称为汇编程序),由计算机完成汇编工作。经过两次扫描过程:编工作。经过两次扫描过程:第一次扫描:第一次扫描:检查语法错误,确定符号名字;建立使用的全检查语法错误,确定符号名字;建立使用的全部符号名字表;每一符号名字后跟一对应值(地址部符号名字表;每一符号名字后跟一对应值(地址或数)。或数)。第二次扫描:第二次扫描:是在第一次扫描基础上,将符号地址转换成地是在第一次扫描基础上,将符号地址转换成地址(代真);利用操作码表将助记符转换成相应的址(代真);利用操作码表将助记符转换成相应的目标码。目标码。16ppt课件4.2 4.2 汇编语言程序的结构汇编语言程序的结构一、汇编语言程序设计步骤1.分析题意,明确要求分析题意,明确要求2.建立数学模型并确定算法建立数学模型并确定算法17ppt课件3.画程序流程图画程序流程图程序流程图是解题步骤及算法的具体化程序流程图是解题步骤及算法的具体化直观清晰地体现了程序的设计思路直观清晰地体现了程序的设计思路4.分配内存单元分配内存单元确定程序与数据的存放地址确定程序与数据的存放地址熟悉所用单片机指令系统熟悉所用单片机指令系统所编程序要正确并具有可读性所编程序要正确并具有可读性5.编写程序编写程序18ppt课件6.程序优化缩短程序长度缩短程序长度加快运行速度加快运行速度节省存储单元节省存储单元7.上机调试检验源程序的正确性检验源程序的正确性使用开发系统使用开发系统利用仿真软件利用仿真软件19ppt课件二、顺序程序结构二、顺序程序结构 根据根据ASCII码表,十进制数码表,十进制数09的的ASCII码和它码和它的的BCD码之间仅相差码之间仅相差30H,本题需要把一个字节的,本题需要把一个字节的两位两位BCD数进行拆分,然后分别和数进行拆分,然后分别和30H拼接,即得拼接,即得到相应的到相应的ASCII码。码。程序按顺序执行,无分支,无转移程序按顺序执行,无分支,无转移例例1:将压缩将压缩BCD码转换码转换成成ASCII码码20ppt课件源源 程程 序序XCHD是什么指令?SWAP是什么指令?21ppt课件三、分支程序结构三、分支程序结构具有判断和转移功能的程序具有判断和转移功能的程序【例【例4-4】求符号函数】求符号函数Y的值的值22ppt课件源源 程程 序序EQUEQUEQUEQUJNB ACC.7,POSI是什么指令?23ppt课件四、循环程序结构四、循环程序结构24ppt课件例例1 1:已知数块长度:已知数块长度L L,求累加和,求累加和已知内部已知内部RAM的的BLOCK单元开始有一无符单元开始有一无符号数据块,块长在号数据块,块长在LEN单元。请编出求数据单元。请编出求数据块中各数累加和、并存入块中各数累加和、并存入SUM单元的程序单元的程序25ppt课件解法一:先判断后处理程序中INC R2指令有什么用途?26ppt课件解法二:先处理后判断EQUEQUEQUEQUEQUEQU27ppt课件例例2 2:查找最大值:查找最大值算法:算法:逐个比较,大者送入逐个比较,大者送入MAX单元单元28ppt课件查找最大值源查找最大值源程序程序1EQUEQUEQUEQUEQUEQUJC NEXT是什么指令?29ppt课件五、主程序调用子程序结构五、主程序调用子程序结构序序绝对调用:绝对调用:ACALL addr11长调用:长调用:LCALL addr16子程序返回:子程序返回:RET30ppt课件例:将一批压缩例:将一批压缩BCD码转换成码转换成ASCII码码 编编写写程程序序,把把以以R0R0所所指指为为起起始始地地址址的的压压缩缩BCDBCD码码转转换换为为ASCIIASCII码码,存存于于以以R1R1所所指指为为起起始始地地址址的的片片内内RAMRAM中中,已已知知BCDBCD数数的的字字节节数数在在R2R2中中 BCD码与ASCII码之间是什么关系呢?31ppt课件 BCD码码ASCII码码030H131H232H333H434H535H636H737H838H939H(A)+30H ASCII将将其其编编成成子子程程序,如下所示序,如下所示 32ppt课件ORG 0000H START:MOV A,R0ACALL GT;调用转换子程序;调用转换子程序MOV R1,A;存转换结果;存转换结果INC R1MOV A,R0;再取原;再取原BCD码字节码字节SWAP A;高;高4位交换到低位交换到低4位位ACALL GT;调用转换子程序;调用转换子程序MOV R1,AINC R0INC R1DJNZ R2,START;未完继续;未完继续HRER:SJMP HERE GT:GT:ANLANL A,A,#0FH#0FH;屏蔽高;屏蔽高4 4位位ADDADD A,A,#30H#30H;求相应的;求相应的ASCIIASCII码码RETRETENDEND 然然后后再再编编写写主主程程序序,调调用用下下面子程序实现本题要求面子程序实现本题要求 33ppt课件下次课前请预习4.3-4.4节,并思考下列问题欲欲将将外外部部RAM起起始始地地址址为为DATA的的数数据据块块(设设数数据据块块长长度度为为20)传传送送到到内内部部RAM起起始始地地址址为为30H的的存存储储区区,应应如如何何编程?编程?已已知知以以外外部部RAM2000H为为起起始始地地址址的的存存储储区区有有20个个有有符符号号数数,要要求求把把正正数数和和正正零零取取出出来来存存放放到到内内部部RAM以以20H为为起起始地址的存储区(负数和负零不作处理)始地址的存储区(负数和负零不作处理),如何编程?,如何编程?34ppt课件练练 习习 题题 一一已已知知被被除除数数和和除除数数都都是是8位位无无符符号号数数,欲欲将将这这两两数数相相除除,并并把商和余数放到指定单元,试说明编程思路把商和余数放到指定单元,试说明编程思路已已知知X和和Y都都是是8位位无无符符号号数数,要要完完成成如如下下计计算算 Z=3X+2Y,并将结果并将结果Z(设(设Z255)送到指定单元,试说明编程思路)送到指定单元,试说明编程思路35ppt课件
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!