匯編語言單片機程序錯誤分析

【春芽電子科技】【匯編語言】匯編語言單片機程序錯誤分析
本文引用地址:http://www.104case.com/article/201611/322504.htm一、MAS51匯編軟件匯編失敗原因分析
1.標號重復常見于復制、粘貼程序時忘記修改標號,造成出現多個相同的標號,標號是不允許重復的。
2.標點符號以全角方式輸入MAS51程序要求標點符號為半角方式,否則匯編失敗。可以在輸入:,;時切換到半角方式,或者在大寫狀態輸入標點符號,這也是很容易犯而且不容易發覺的錯誤。
3.注釋太長有時為了以后讀懂程序,寫了很長的注釋,站長發現超過20個漢子時也會造成匯編失敗,解決辦法可以將太長的注釋分成多個注釋。
4.數值#FFH前遺漏0,根據要求應該在a~f前加0,寫成#0FFH
5.字母O和數字0搞混有時候這兩個字看上去完全相同,要注意哦
6.標號后邊遺漏":"
7.標號使用了特殊字符,比如:T1、T2、A、B這些字符有特定的含義,不允許用于標號。
8.AJMP跳轉超過2K地址,AJMP屬于短跳轉命令,有2K地址范圍的限制。
9.JB P3.2,EXIT跳轉超過-128~127個地址范圍。這個是最容易出現的錯誤!你有可能程序剛才還能匯編編譯成功,你加了一段程序后程序就提示出錯了,你可以把
JB P3.2,EXIT
轉換成
JNB P3.2,UUU
AJMP EXIT
UUU:
10.字母I和數字1混淆,冒失鬼的常見問題。
11.創造發明不存在的匯編語言指令,在編寫程序程序的過程中可不歡迎這種創新,這種指令匯編程序不支持,芯片也不認可。
12.符號“:”“;”最好用半角書寫。
使用匯編軟件常見問題解答:
1.如果匯編軟件出現** Unrecongnized Command **提示字樣說明是匯編命令輸入錯誤。正確的匯編命令是asm51 d:
主站蜘蛛池模板:
黎川县|
淮滨县|
衢州市|
绍兴市|
沙洋县|
峨眉山市|
仁寿县|
乌兰察布市|
喀喇沁旗|
景东|
车致|
丽江市|
泗水县|
绥棱县|
武汉市|
洮南市|
北流市|
德保县|
咸宁市|
和平县|
磐安县|
大丰市|
桐柏县|
云安县|
柳江县|
兴国县|
武夷山市|
万年县|
乐至县|
宜阳县|
巴林右旗|
唐海县|
左贡县|
大连市|
太白县|
新泰市|
晋江市|
大姚县|
永和县|
连云港市|
宁化县|