当前位置:首页 > 单片机 > 单片机
[导读]一、汇编软件汇编失败原因分析:这里采用Keil C51软件包中的宏汇编器A51作为编绎器,单片机的汇编语言编写时要注意一定的语法,详细介绍可以参考相关参考书,语法错误会造成汇编失败,常见的汇编错误如下:1. 标号重

一、汇编软件汇编失败原因分析:

这里采用Keil C51软件包中的宏汇编器A51作为编绎器,单片机的汇编语言编写时要注意一定的语法,详细介绍可以参考相关参考书,语法错误会造成汇编失败,常见的汇编错误如下:

1. 标号重复:

常见于复制、粘贴程序时忘记修改标号,造成出现多个相同的标号,标号是不允许重复的。

2.标点符号以全角方式输入:

汇编程序要求标点符号为半角方式,否则汇编失败。可以在输入:,;时切换到半角方式,或者在大写状态输入标点符号,这也是很容易犯而且不容易发觉的错误。

3.数值#FFH 前遗漏0:

根据要求应该在a~f前加0,写成#0FFH

4.字母O和数字0搞混:

有时候这两个字看上去完全相同,要注意哦~~

5.标号后边遗漏":"

6.标号使用了特殊字符:

标号不能用指令助记符、伪指令、特殊功能寄存器名和8051在指令系统中用的“#”、“@”等,长度以2~6字符为宜,第一字母必须是英文字母。比如:T1、T2、A、B这些字符有特定的含义,不允许用于标号。

7.AJMP跳转超过2K地址:

AJMP属于短跳转命令,有2K地址范围的限制。

8.超过地址范围:

JB P3.2,EXIT跳转超过-128~127个地址范围。这个是最容易出现的错误!你有可能程序刚才还能汇编编译成功,你加了一段程序后程序就提示出错了,你可以把

JB  P3.2,EXIT

转换成

JNB  P3.2,LD01

AJMP EXIT

LD01: AJMP  EXIT

……

9.字母I和数字1混淆:

冒失鬼的常见问题。

10.创造发明不存在的汇编语言指令:

在编写程序程序的过程中可不欢迎这种创新,这种指令汇编程序不支持,芯片也不认可。

11.符号“:”“;”最好用半角书写。

二、程序出错:

1.寄存器重复调用:

比如主程序中设定了R4=5,表示主程序循环执行5次,而其中的一个延时子程序又用到R4,使R4的值发生紊乱,造成程序无法正常执行。

2.硬件不熟悉:

单片机一般采用下拉输出,往往端口输出0驱动外设工作,和常见的正逻辑相反,容易搞错。

三、指令系统常用符号和含义

(1)Ri:工作寄存器0和工作寄存器1,i=0或1。即R0~R1。

(2)Rn:工作寄存器R0~R7,n=0~7。

(3)@Ri:寄存器Ri间接寻址8位存储器单元00H~FFH。

(4)direct:8位直接地址,它可以是内RAM 00H~7FH或SFR的80H~FFH。

(5)#data:8位立即数。

(6)#data16:16位立即数。

(7)addr16:16位目的地址。用于LCALL和LJMP指令,能调用或转移到64K程序存储器空间的任何地方。

(8)addr11:11位目的地址。用于ACALL和AJMP指令,可在下条指令地址所在的2K字节页面内调用或转移。

(9)rel:带符号的8位偏移地址,用于SJMP和所有的条件转移指令。其范围是相对于下一条指令第1字节地址的-128~+127个字节。

(10)DPTR:数据指针,可用作16位的地址寄存器。

(11)bit:位地址。片内RAM中的可位寻址及SFR中的可寻址位。

(12)A:累加器Acc。

(13)B:通用寄存器,主要用于乘法MUL和除法DIV指令中。

(14)Cy:进位标志位或布尔处理器中的累加器。

(15)@:间接寄存器或基址寄存器的前缀。如@Ri,@DPTR,@A+PC,@A+DPTR。

编写汇编语言的忠告:

养成良好的程序书写习惯,比如标号对齐、参数对齐、注释对齐,这样看起来赏心悦目,也不容易出错。标号最好采用有意义的英文,这样比较直观,注释尽量详细准确,便于以后读懂,而且有利于其它程序中作为子程序模块的调用。还有要注意典型程序模块的积累,再复杂的程序也是由一个个小程序模块组成的,在初学阶段可以对典型程序比如:延时子程序、查表子程序、按键消抖子程序等编写实践一次,这样印象深刻,便于以后引用。

扩展阅读:单片机汇编程序编码规范

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

(全球TMT2023年8月24日讯)第三十届北京国际广播电影电视展览会(BIRTV2023)正在北京如火如荼地进行中。在展会上,成都索贝数码科技股份有限公司与深圳市洲明科技股份有限公司宣布签署战略合作协议,双方将携手布...

关键字: 模型 TV 编写 网络视频

妇科大咖云集 共话日间诊疗新模式 北京2023年3月7日 /美通社/ -- 为进一步推广由郎景和院士牵头,朱兰教授等我国多位著名妇科医学专家共同编著《日间宫腔镜手术中心设置及管理流程中国专家共识》,普及日间宫腔镜诊疗理...

关键字: 东风 内窥镜 编写 调试

MCS-51单片机的汇编语言程序由若干条汇编语言指令和伪指令构成。指令存放在程序存储器中,被单片机读取并执行,且执行结果将影响单片机自身的状态。

关键字: 汇编语言 伪指令

目前,结构化是程序设计的基本要求,可以使程序结构清晰、易于读写且方便调试,也能够提高程序设计的效率。在结构化程序设计中,程序的基本结构有三种,即顺序结构、分支结构及循环结构。而子程序(也被称为函数或过程)是一种提高程序模...

关键字: 汇编语言 顺序程序设计

在单片机系统设计中,程序设计是重要的一环,它的质量直接影响到整个系统的功能。用汇编语言进行程序设计的过程和用高级语言设计程序有相似之处,其设计过程大致可以分为以下几个步骤:

关键字: 汇编语言 程序设计 单片机

汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。在...

关键字: 汇编语言 指令 单片机

上海2022年11月1日 /美通社/ -- 近日,由上海勃林格殷格翰药业有限公司与华东理工大学药学院合作编写的高等学校通识课精品教材《质量文化导论》正式出版发行。这也是国内首门质量文化课程配套教材。该书的出版有望助力全国...

关键字: 内核 编写

上海2022年9月6日 /美通社/ -- 9月3日上午,《"东数西算"战略下绿色智算中心产业发展研究报告》重磅发布。该报告由国家信息中心与燧原科技深度合作,联合庆阳市人民政府、之江实验室、中国能建共同...

关键字: 数字经济 安防 模型 编写

(全球TMT2022年8月31日讯)8月25日,"2022算网融合产业发展峰会"在北京举行,会上中国信息通信研究院发布《"边缘计算+"技术白皮书》,该白皮书由信通院发起,浪潮信息等业界多家领袖企业参与编写,为边缘计算在...

关键字: 边缘计算 人工智能 机器人 编写

北京2022年8月31日 /美通社/ -- 8月25日,"2022算网融合产业发展峰会"在北京举行,大会汇聚工业和信息化部、中国通信标准化协会、运营商、阿里巴巴、国家电网、浪潮信息等政府及企...

关键字: 编写 边缘计算 AI ECOM
关闭
关闭