|
编写汇编语言常见错误分析
一、汇编软件汇编失败原因分析: 这里采用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] [2] 下一页 |