標題: 請問各位老大,Keil C51中,語句標號最多定義到幾位? [打印本頁]

作者: newlined    時間: 2024-5-30 09:18
標題: 請問各位老大,Keil C51中,語句標號最多定義到幾位?
如題:就是程序中,語句標號,比如   Loop:MOV A,#00;中的Loop,最多可以定義到幾位?一個程序,總是亂跑,我有些懷疑語句是不是定義的過長,不識別了?但是按說這樣編譯就應該出錯,請各位老大說明下,謝謝。

作者: newlined    時間: 2024-5-30 11:06
我有些語句的標號到了15位,是否可以?
作者: yzwzfyz    時間: 2024-5-30 11:56
取決于編譯平臺的許可,這里要看Keil C51的說明。
我也不知,但有此經驗:
最早的平臺是8個字節(jié),現在不會低于16位。超過的部分尾部無效。
早先不允許中文,現在可以了。但可能不是所有的平臺都一樣。
不管如何,只能兩種限制:
1、字符數
2、字符的形式(如禁用的關鍵字、內部字、非ASCII符、控制符)
避免麻煩的方案:前8(或16)個字符有作區(qū)分。不用2、()中的字符形式。

程序亂跑,多半不是標號的問題。因為符號重疊時,會報警。

作者: zhuls    時間: 2024-5-30 12:12
不管3位、5 位還是35位,編譯后就是一個地址。
所以你放心大膽地用吧。
作者: xiaobendan001    時間: 2024-5-30 13:23
標號用于跳轉,跳來跳去就會亂的。所以不要亂跳。話說為啥還要研究匯編啊。
作者: newlined    時間: 2024-5-30 17:05
yzwzfyz 發(fā)表于 2024-5-30 11:56
取決于編譯平臺的許可,這里要看Keil C51的說明。
我也不知,但有此經驗:
最早的平臺是8個字節(jié),現在不 ...

謝謝您的回復,您說的對,問題已經找到,不在標號。
作者: newlined    時間: 2024-5-30 17:05
zhuls 發(fā)表于 2024-5-30 12:12
不管3位、5 位還是35位,編譯后就是一個地址。
所以你放心大膽地用吧。

是的,謝謝。
作者: newlined    時間: 2024-5-30 17:06
xiaobendan001 發(fā)表于 2024-5-30 13:23
標號用于跳轉,跳來跳去就會亂的。所以不要亂跳。話說為啥還要研究匯編啊。

以前的一個程序,用了多少年了,還在跑




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1