標(biāo)題: 9條指令,讓你縱橫51的天下 [打印本頁]

作者: sppcb    時(shí)間: 2015-4-20 11:18
標(biāo)題: 9條指令,讓你縱橫51的天下
說明:?jiǎn)纹瑱C(jī)難就難在入門!大家可能看了這篇標(biāo)題,再看內(nèi)容,學(xué)單片機(jī)的興趣一下子就沒有了。因?yàn),很多人不懂英文,越往下看越煩,說實(shí)話,站長(zhǎng)也沒有認(rèn)真看這篇文章,我認(rèn)為這篇文章適合應(yīng)付理論考試。因?yàn)樵趯?shí)際應(yīng)用中,只需要會(huì)常用的幾十條命令就可以做事了,站長(zhǎng)初學(xué)時(shí)寫的矩陣鍵盤掃描程序只用到了四條命令。

最常用分類命令:

1、MOV:這是移動(dòng)命令,這是最常用的命令,我將寫程序當(dāng)做是堆積木游戲,移來移去的意思,這就是書上所講的尋址,大家不要管書上怎么寫(書上寫的特別麻煩),你自己在實(shí)驗(yàn)訓(xùn)練中總結(jié)出幾條規(guī)則就行了,用熟了再了解一下MOVXMOVC就行了。

2、INC:這是加1命令,運(yùn)行一次加一次1,在計(jì)數(shù)程序、時(shí)鐘程序、循環(huán)程序中非常好用。

3、DEC:這是減1命令。同上,這是最簡(jiǎn)單有效、好記好用的命令。

4、JMP:這是跳轉(zhuǎn)命令,就是讓程序無條件到達(dá)指定位置。請(qǐng)大家不要看書上長(zhǎng)跳轉(zhuǎn)短跳轉(zhuǎn)的,全部用這一個(gè)命令代替(AJMP,SJMP,XJMP,YJMP,ZJMP……)就行了,其它的跳轉(zhuǎn)命令不要管。

5、CALL:這是調(diào)用子程序命令,和JMP命令有點(diǎn)相同,但是這條命令要記住返回來的路。請(qǐng)大家不要看書上長(zhǎng)調(diào)用短調(diào)用的,全部用這一個(gè)命令代規(guī)(ACALL,SCALLXCALL,YCALL,ZCALL……)就行了,其它的調(diào)用命令不要管。

6、JB:這是高電平跳轉(zhuǎn)命令,相當(dāng)于JMP增加了條件選擇功能。類似的爭(zhēng)對(duì)位條件轉(zhuǎn)移命令有幾條,有的是高電平轉(zhuǎn)移,有的是低電平轉(zhuǎn)移,有的是爭(zhēng)對(duì)C,大家用到這里了再去看書。

7、DJNZ、CJNE:上面是位條件跳轉(zhuǎn)命令,這里是字節(jié)條件跳轉(zhuǎn)命令,有且只有這兩條字節(jié)跳轉(zhuǎn)命令,DJNZ是某數(shù)減1不等于0跳轉(zhuǎn),CJNE是比較兩個(gè)數(shù)不相等跳轉(zhuǎn),這在循環(huán)程序中最常用,各有各的方便。大家用到這里時(shí)再去看書,這很常用,看幾次就熟了。

8、ANLORL,ADD,SUBB、MUL,DIV……:這里有幾條邏輯運(yùn)算和算術(shù)運(yùn)算命令,實(shí)際應(yīng)用中并不是很多,大家用到這里時(shí)再去看書。這里就不多說了。

9、RET、RETIXCH、SWAPRL、RR、POP、PUSHSETB、CLR……:還有幾個(gè)扮演小丑的命令,有幾個(gè)也很常用,但是功能特別簡(jiǎn)單,特別好記,并且不需要去記它,用到的時(shí)候看看指令說明自然就會(huì)了。

最后要強(qiáng)調(diào)的是,學(xué)會(huì)了這些匯編命令,就不要只停留在命令上,要學(xué)會(huì)一些命令的組合應(yīng)用(這可以讓你提高寫程序效率),再就是學(xué)會(huì)整體的資源分配(也算得上是組合,這才有可能讓你完成一項(xiàng)具體的工程)。






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