




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第4章汇编语言程序设计简介4.1汇编语言概述 1.机器语言 是计算机所能识别的唯一语言,由二进制代码0和1构成指令和数据。 其具有效率高、响应速度快的特点,但由于机器语言编写的程序依赖于计算机的结构,可移植性差,繁琐且难于记忆、识别和调试,通常编程时,不采用机器语言。2.汇编语言3.高级语言4.1.2单片机汇编语言源程序的编辑和汇编2.汇编 计算机不能直接识别和执行源程序。因此源程序必须经过汇编程序汇编产生机器码目标程序文件,程序才能执行。这种将汇编语言源程序转换成机器语言程序的过程称为汇编。汇编语言源程序的汇编过程分为手工汇编和机器汇编。 所谓手工汇编,即采用人工查指令表的方法将汇编指令翻译成相应机器代码。 通常源程序的人工汇编需要两次才能完成,第一次汇编查找每条指令的机器代码,第二次汇编完成地址偏移量的计算。 由于手工汇编需要计算和查找,繁琐而且容易出错,而且程序修改时可能会引起指令的地址变化,转移指令的偏移量也随之改变,需要重新计算,所以手工汇编主要应用于设计短小程序或调试程序的场合。所谓机器汇编,即采用汇编程序对源程序进行自动汇编,由于单片机软硬件资源的限制,该过程通常借助于PC系统机实现,象这种借助于一种计算机而为另一种计算机产生目标代码的汇编方式又称为交叉汇编。 交叉汇编的原理类似于手工汇编,在汇编程序中通常存入了两张表,即MCS-51单片机的指令代码表和伪指令表。汇编程序通常通过两次扫描完成汇编,第一次扫描查找源程序中每条指令的机器代码,第二次扫描完成地址偏移量的计算,汇编后生成目标文件和列表文件。这是目前应用较广的汇编方法。汇编的主要功能为: (1)确定程序中每条汇编语言指令的指令机器码。 (2)确定每条指令在程序存储器中的存放地址。 (3)提供语法、编辑等方面的错误信息,但不能提供程序的逻辑错误。 (4)产生目标执行文件(*.OBJ/*.HEX)和列表文件(*.LST)。4.1.3伪指令例:ORG2000H MOVSP,#60H MOVR0,#2FH MOVR2,#0FFH ORG伪指令说明其后面程序的目标代码在存储器中存放的起始地址是2000H,即 存储器地址目标程序 2000H758160 2003H782F 2005H7AFF二、等值指令EQU 指令格式: 字符名称EQU数字或汇编符号 功能:使指令中的字符名称等价于给定的数字或汇编符号。 使用等值指令可给程序的编制、调试、修改带来方便:如果在程序中要多次使用到某一地址,由EQU指令将其赋值给一个字符名称,一旦需要对其进行变动,只要改变EQU命令后面的数字即可,而不需要对程序中涉及到该地址的所有指令逐句进行修改。 注意,由EQU等值的字符名称必须先赋值后使用,且在同一个源程序中,同一个标号只能赋值一次。例: PA8155EQU8001H 即给标号PA8155赋值为8001H。三、定义字节指令DB 指令格式: [标号:]DB8位二进制数表 功能:把8位二进制数表依次存入从标号开始的连续的存储单元中。 格式中,标号区段可有可无,DB指令之后的8位二进制数表是字节常数或用逗号隔开的字节串,也可以是用引号括起来的ASCII码字符串(一个ASCII字符相当于一个字节)。 例: ORG1000H BUF1:DB38H,7FH,80H BUF2:DB45H,66H ORG伪指令指定了标号BUF1的地址为1000H,而DB伪指令是将其后的二进制数表38H,7FH,80H依次存放在1000H,1001H,1002H3个连续单元之中,BUF2也是一个标号,其地址与前一条伪指令连续,即1003H,1004H地址单元中依次存放45H,66H。四、定义字指令DW 指令格式: [标号:]DW16位数据表 该指令的功能与DB相似,区别仅在于从指定地址开始存放的是指令中的16位数据,而不是字节串。每个16位数据要占两个存储单元,高8位先存,低8位后存,这和MCS-51指令中的16位数据存放顺序是一致的。五、DS(DefineStore)——定义存储区指令 功能为:从指定的单元地址开始,保留一定数量的存储单元,以备使用。 指令格式:[标号:]DS表达式 其中,表达式指定保留的内存单元个数。 例如, ORG1000H DS10 TAB:DB10H … 汇编结果:从1000H地址处开始,保留10个字节单元。(100AH)=10H。六、BIT——位地址符号指令 指令功能为:将位地址赋值给指定的符号名称,通常用于位符号地址的定义。 指令如下:字符名称 BIT 位地址 例如,X1BITP1.0 汇编结果为将位地址P1.0赋给变量X1,即在程序中便可使用X1代替位地址P1.0。七、DATA——数据地址赋值指令 指令功能:将数据地址或

王子****青蛙
实名认证
内容提供者


最近下载
最新上传
浙江省宁波市2024-2025学年高三下学期4月高考模拟考试语文试题及参考答案.docx
汤成难《漂浮于万有引力中的房屋》阅读答案.docx
四川省达州市普通高中2025届第二次诊断性检测语文试卷及参考答案.docx
山西省吕梁市2025年高三下学期第二次模拟考试语文试题及参考答案.docx
山西省部分学校2024-2025学年高二下学期3月月考语文试题及参考答案.docx
山西省2025年届高考考前适应性测试(冲刺卷)语文试卷及参考答案.docx
全国各地市语文中考真题名著阅读分类汇编.docx
七年级历史下册易混易错84条.docx
湖北省2024-2025学年高一下学期4月期中联考语文试题及参考答案.docx
黑龙江省大庆市2025届高三第三次教学质量检测语文试卷及参考答案.docx