[工学]第三章程序设计.ppt
《[工学]第三章程序设计.ppt》由会员分享,可在线阅读,更多相关《[工学]第三章程序设计.ppt(35页珍藏版)》请在优知文库上搜索。
1、 汇编程序汇编程序:能将汇编语言的能将汇编语言的源程序源程序转换成机器转换成机器语言的语言的目标目标程序的一种系统软件程序的一种系统软件汇编汇编:汇编语言程序到机器语言程序的转换过程:汇编语言程序到机器语言程序的转换过程1.手工汇编手工汇编:人工查指令表,查出程序中每条指令对:人工查指令表,查出程序中每条指令对应的机器代码。用于设计短小程序或调试程序的场合应的机器代码。用于设计短小程序或调试程序的场合2. .机器汇编机器汇编:用计算机中的汇编程序对用户源程序进:用计算机中的汇编程序对用户源程序进行汇编。行汇编。用机器汇编要考虑汇编程序的约定用机器汇编要考虑汇编程序的约定汇编的主要任务:汇编的主
2、要任务:1)确定程序中每条汇编语言指令的指令机器码确定程序中每条汇编语言指令的指令机器码2)确定每条指令在存储器中的存放地址确定每条指令在存储器中的存放地址一一. 汇编语言指令类型汇编语言指令类型3)提供错误信息提供错误信息4)提供目标执行文件提供目标执行文件(*.OBJ/*.HEX)和列表文件和列表文件(*.LST)1 机器指令机器指令:指令系统中的全部指令。每条机器指令:指令系统中的全部指令。每条机器指令都有对应的机器代码,可以被都有对应的机器代码,可以被CPU执行执行2 伪指令伪指令: 汇编控制指令,没有指令代码,只用于汇汇编控制指令,没有指令代码,只用于汇编过程编过程(预编译指令预编译
3、指令),为汇编程序提供汇编信息,为汇编程序提供汇编信息 地址地址 机器码机器码源程序源程序 ORG 2000H 2000H 78 30 MAIN: MOV R0,#30H 2002H E6 MOV A,R0 3 3 宏指令宏指令 宏汇编功能:将需要反复多次执行的程序段定义宏汇编功能:将需要反复多次执行的程序段定义成一个宏指令名(宏定义)。编程时,可在程序中成一个宏指令名(宏定义)。编程时,可在程序中使用宏指令名来替代使用宏指令名来替代被定义的被定义的程序段(宏调用)程序段(宏调用)宏定义过程宏定义过程:宏调用过程:宏调用过程: 宏指令名宏指令名 实际参数实际参数 宏指令名宏指令名 实际参数实际
4、参数宏指令名宏指令名 MACRO 形式参数形式参数 ;被定义的程序段;被定义的程序段 ENDM用机器汇编要考虑汇编程序的约定用机器汇编要考虑汇编程序的约定1按指令格式和语法规则编写程序按指令格式和语法规则编写程序常数表示法:常数表示法:十进制数:十进制数: 20,20D十六进制数:十六进制数:87H,0F0H二进制数:二进制数: 01011001B字符:字符: H字符串:字符串: “Hello” 2使用伪指令提供汇编信息使用伪指令提供汇编信息二二伪指令伪指令 常用伪指令及功能:常用伪指令及功能:1. ORG起始地址指令。定义程序或数据的起始地址起始地址指令。定义程序或数据的起始地址指令地址指令
5、地址 机器码机器码源程序源程序 ORG 2000H 2000H 78 30 MAIN: MOV R0,#30H 2002H E6 MOV A,R0 ORG 3000H 3000H 23 TAB: DB 23H,100,A 3001H 64 3002H 412. DB 定义字节常数指令。输入程序中的常数定义字节常数指令。输入程序中的常数例:例: DB 23H,100,ADB“HELLO” 4. EQU 等值指令。为标号或标识符赋值等值指令。为标号或标识符赋值 X1 EQU 2000HX2 EQU 0FH MAIN: MOV DPTR,#X1 ADD A,#X2 5. END 结束汇编指令结束汇编
6、指令例:例:START: END START3 . D W 定 义 字 型 常 数 指 令定 义 字 型 常 数 指 令例:例: DW 1234H,5678H一一. .确定方案和计算方法确定方案和计算方法二二. .了解应用系统的硬件配置、性能指标了解应用系统的硬件配置、性能指标三三. .建立系统数学模型,确定控制算法和操作步骤建立系统数学模型,确定控制算法和操作步骤四四. .合理分配存储器单元和了解合理分配存储器单元和了解I/O接口地址接口地址五五. 编制源程序编制源程序1.按功能设计程序,明确各程序之按功能设计程序,明确各程序之间的相互关系间的相互关系2. 用流程图表示程序结构和功能用流程图
7、表示程序结构和功能开始开始1 YN?3.程序中用注释说明指令在程序中程序中用注释说明指令在程序中的作用,方便阅读、调试和修改的作用,方便阅读、调试和修改 直线程序、分支程序、循环程序、子程序直线程序、分支程序、循环程序、子程序直线程序直线程序(简单程序简单程序),程序走向只有一条路径,程序走向只有一条路径双字节变补程序双字节变补程序(设数据在设数据在R4R5中中)MOV A,R5 ;取低字节取低字节CPL AADD A,#1 ;低字节变补低字节变补MOV R5,AMOV A,R4 ;取高字节取高字节CPL AADDC A,#0 ;高字节变补高字节变补MOV R4,A例例4-3-4 压缩式压缩式
8、BCD码分解成为单字节码分解成为单字节 BCD码码(拆字拆字)MOV R0,#40H;设指针设指针MOV A,R0;取一个字节取一个字节MOV R2,A;暂存暂存ANL A,#0FH ;清清0高半字节高半字节INC R0MOV R0,A ;保存数据个位保存数据个位片内片内RAM42H41H40H 十位十位 个位个位MOV A,R2SWAP A ;十位换到低半字节十位换到低半字节ANL A,#0FHINC R0MOV R0,A ;保存数据十位保存数据十位00000000个位个位00000000十位十位 MOV A,R2 JNB ACC.7,N;为正数?为正数? CPL A;负数变补负数变补 IN
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工学 第三 章程 设计