文档详情

(ppt)keil 汇编程序设计实例.ppt

发布:2016-10-18约6.4千字共27页下载文档
文本预览下载声明
c4 MCS-51汇编程序设计 山东职业学院 单片机编程语言概述 程序设计语言有3种: 机器语言、 汇编语言和高级语言。 1 机器语言: 计算机能直接识别和执行的二进制代码形式的指令称为机器指令,机器指令的集合称为机器语言。每种计算机系统都有自己的机器语言, 即不同计算机系统机器语言不相同。 2 汇编语言 用助记符描述的指令系统, 称为汇编语言。 汇编语言也是面向机器的, 每种计算机系统都有它自己的汇编语言, 用汇编语言编写的程序, 称为汇编语言源程序或汇编源程序。 特点: (1)汇编语言比机器语言容易理解,但必须通过编译程序翻译成机器语言,才能被计算机执行。 (2)汇编语言直接访问CPU硬件,响应速度快,程序存储器利用率高。 (3)利用汇编语言编程要求程序设计人员必须对机器的硬件结构和指令系统熟悉。 3 高级语言 高级语言(如 PASCAL、 C、 FORTRAN、 BASIC等)是一种面向问题或过程的语言。 接近于自然语言和数学算法, 与机器的硬件无关, 用户编程时不必仔细了解所用计算机的具体性能和指令系统。 高级语言不但直观、 易学、 易懂, 而且通用性强, 可以在不同的计算机上运行, 因此可移植性好。 本章内容 伪指令 源程序的编辑与汇编 汇编语言程序设计 设计步骤 流程图 设计实例 伪指令 在编制汇编语言源程序的过程中,除了使用mcs-51指令系统外,还使用伪指令。汇编语言源程序通过汇编程序的编译生成目标代码(机器语言程序),伪指令是对汇编过程进行控制的指令,主要用来指定程序或数据的起始位置, 给出一些连续存放数据的确定地址, 或为中间运算结果保留一部分存储空间以及表示源程序结束等。伪指令不要求计算机进行任何操作, 也没有对应的机器码, 不产生目标程序, 不影响程序的执行。不同版本的汇编语言, 伪指令的符号和含义可能有所不同, 但是基本用法是相似的。 (1) 设置目标程序起始地址的伪指令 [标号: ]ORG 16位地址 该伪指令的功能是规定其后面目标程序的起始地址。 它放在一段源程序(主程序、 子程序)或数据块的前面, 说明紧跟在其后的程序段或数据块的起始地址就是指令中的 16 位地址。 例如: ORG 2000H START: MOV A, #7FH … 伪指令 (2) 结束汇编伪指令END。 格式: [标号: ] END END是汇编语言源程序的结束标志, 表示汇编结束。 在END以后所写的指令, 汇编程序都不予以处理。 一个源程序只能有一个END命令。 在同时包含有主程序和子程序的源程序中, 也只能有一个END命令, 并放到所有指令的最后, 否则, 就有一部分指令不能被汇编。 (3) 定义字节伪指令DB。 格式: [标号: ]DB 项或项表 其中项或项表指一个字节, 或用逗号分开的字符串, 或以引号括起来的字符串(一个字符用ASCII码表示, 就相当于一个字节)。 该伪指令的功能是把项或项表的数值(字符则用ASCII码)存入从标号开始的连续存储单元中。 例如: ORG 2000H TAB1: DB 30H, 8AH, 7FH, 73 DB ′5′,′A′,′BCD′ 由于ORG 2000H, 所以TAB1的地址为2000H, 因此以上伪指令经汇编以后, 将对 2000H开始的若干内存单元赋值: (2000H) = 30H (2005H) = 41H ; 字母A的ASCII码 (2001H)=8AH (2006H) = 42H ; ′BCD′中B的ASCII码 (2002H)=7FH (2007H) = 43H ; ′BCD′中C的ASCII码 (2003H) = 49H ; 十进制数 73 以十六进制数存放 (2008H) = 44H ; ′BCD′中D的ASCII码 (2004H) = 35H ; 数字 5 的ASCII码 伪指令 (4) 定义字伪指令DW。 格式: [标号: ]DW 项或项表 DW伪指令与DB的功能类似, 所不同的是DB用于定义一个字节(
显示全部
相似文档