51微控制器組合語言例項,51微控制器組合語言資料

2023-01-22 22:25:23 字數 3791 閱讀 5867

1樓:匿名使用者

其他沒要求了?要是這樣,隨便寫寫的呀。

清零程式:org 0000h

ljmp start

org 0030h

start:mov r7,#

mov r0,#30h

clr aloop:mov @r0,a

inc r0

djnz r7,loopend

2樓:瀟湘電子工程師

我的部落格上有,你可以去看看。

51微控制器組合語言資料

3樓:百年白度

一些keil 彙編資料。

裡面有一大包 彙編 c 的例項。

用組合語言編寫一個51微控制器的程式

4樓:郭田享

首先搞清led管是高電平導通還是低電平導通。

如果是低電平導通,p1賦0x00時,發光管全亮,0xff時,全滅。

具體程式:#define uint unsigned int#define uchar unsigned charvoid delay(uint time_out)}}void main()

}程式大致如此,delay函式負責延遲500ms.有問題自己再除錯除錯。

51微控制器的組合語言

5樓:匿名使用者

jmp(ljmp) kk

...代表程式)

jmp(ljmp) kk

...代表程式)

kk: .這樣是完全可以。多少個跳轉都可以。

注意:jmp 和ljmp 的範圍即可、

6樓:網友

標號對於編譯器編譯後的,是一個可行的地址。

所以你這樣的情況,不需要設定兩個標號,可以直接跳轉到同一個標號上。

7樓:五寒夢

可以跳到同一個標號;

也可以設定兩個標號(多個標號),便於閱讀。

8樓:匿名使用者

那就跳到同一個標號去。

at89c51微控制器組合語言程式設計

9樓:做而論道

以前畫過一個類似的:

如果感興趣,可以繼續修改。

10樓:網友

嘿嘿,看來這個分數不好拿。硬體連線不是問題,關鍵是程式設計。。。建議在網上找各個部件的原理圖,再把他們組合起來,這樣問題應該不大。

11樓:匿名使用者

北京航空航天大學,《微控制器原理》有相關的介紹例項。

12樓:網友

幹!現在這學生怎麼都這麼懶了?書都懶得看了?

你們微控制器教材上自己翻翻 肯定有……

51微控制器組合語言基礎書籍: 誰有推薦關於學習51微控制器組合語言基礎的書籍 比較好的

13樓:做而論道

彙編語bai言,是一種十分簡明。

du的語言。

它和硬體。zhi,是直接相關的。

如果,dao對硬體缺乏理版解,組合語言,權則是非常難以理解的語言。

樓主想要尋找比較好的書,顯然是遇上了難處,通常是硬體基礎不夠。

如果是這樣,應該先學習c語言。

c語言,是高階語言,它是脫離硬體的。

學習c語言,可以在不涉及硬體的條件下,學會程式設計的方法、思路。

學會c之後,再學彙編,這是提高的過程。

這個提高,並不是必須的。

因為,在51微控制器這個領域,用c程式設計,已經足以夠用。

學會c之後,再學彙編,難度就會大大降低。

學好彙編之後,你會發現,c編譯器,實在是太笨了。

比如,把一個數字,分解成十位、個位:

用 c 語言,就必須進行兩次除以10的運算;

用組合語言,計算一次除以10,商和餘數,就都算出來了。

像這樣的例項,比比皆是。

原因就是c編譯器,只能使用中小學生層次的演算法思路。

學好了彙編,基本上,就不會再用c程式設計了。

採納答案說,「「摸索透了之後也要學著接觸c」」,並不是最好的學習途徑。

c是初級的層次,彙編則高一些,最好的是c、彙編混合程式設計。

應該由淺入深,逐步的進行,這樣,學習的效率才能高。

14樓:匿名使用者

很多年前一本書《微控制器原理與應用教程》,電子工。

15樓:匿名使用者

《復mcs-51/96系列微控制器原理及應用制》,這個主要是針對彙編的,但是摸索透了之後也要學著接觸c。

還有,如果想真正學好微控制器,光看書是肯定不行的,在網上買一塊開發板,照著實驗過一遍,保準你不說精通也學成高手了。

求51微控制器 組合語言 教程

16樓:匿名使用者

如果你學習微控制器的目的是為了以後用於開發,那你就要從基礎開始學習,c有c的優點,彙編有彙編的優點,c裡面插入彙編則能充分利用兩者的優點,學微控制器沒有捷徑可走,必須學會基本理論,推薦你認真學一下《微控制器原理與應用-基於彙編、c51及混合程式設計》一書,這本書中的例題和實際結合,這本書學好了再做設計時會有點思路,各個例題的原理圖與實際電路圖一致,標出了各器件的引數,給出了彙編、c51兩種程式設計的詳解,該書例題的程式編寫思路符合於產品設計,最後一章給出了兩個完整的例項,通俗易懂,文庫中有該書的教學課件,結合課件學習形象一些容易懂。

51微控制器組合語言的一個小問題

17樓:頹廢_小胖

就是對兩位壓縮bcd碼進行調整。

比如r1 = 17h

a = 28h

add a,r1 顯然 a=3fh

但是 這不是我們想要的結果,因為我們用一個位元組表示的是壓縮的bcd碼,而bcd碼根據8421的標準碼是麼有f這個數字的,雖然裡面存的資料是17h和28h

但是我們把他看成是bcd碼,也就是說用4位數字表示一個數,17h+28h=45h

我們希望得到的是這個結果,所以有了da a這是根據cy ac進位做出的自動調整指令,有關詳細情況可以用數學方法解釋,樓主有興趣可以直接研究一下。

總之,調整以後原來的3fh變成了45h

18樓:網友

這條指令跟在加法指令(add、addc)指令後,對累加器a中8位結果進行調整,使它調整為壓縮的bcd碼錶示的數,以完成十進位制加法運算功能。兩個壓縮的bcd碼按二進位制數相加之後,必須經該指令調整後才能得到壓縮的bcd碼的和數,具體如下所示。

① 若a3~0>9或ac=1,則(a) +06h a

② 若a7~4>9或cy=1,則(a) +60h a

一個微控制器的組合語言例子,完全看不懂啊,哪個大神能慢慢解釋下哈?謝謝啦!

19樓:徐貴洪

51的彙編。

;後面的是 註釋 不用管。

org偽指令 執行後pc程式指標執向後面的地址0000h。

ljmp跳轉指令 執行後跳到main:標誌開始執行:後 mov 把#0a5h立即數給r0暫存器。

clr 清零 執行後把累加器a清零 這是a的值=0;

年輕人多看看書吧…等後面的人接龍。我還有事。

20樓:匿名使用者

樓豬 你這些指令 都懂嗎 如果不懂的話 我建議你回去看看簡單點的程式 比如流水燈 起碼要懂得51微控制器指令集與用法。

KEIL C51微控制器組合語言程式設計問題

name cs t pr?cs t?cs t segment code public cs t rseg pr?cs t?cs t以上是什麼意思 編譯軟體 肯定 不認 以下程式 應該 可以編譯 cs t push acc 這程式看不出起什麼作用。mov th0,00hmov tl0,00hmov a...

急急急51微控制器組合語言,哪位大俠幫忙翻譯翻譯吧誰翻譯好了再加財富值啊謝謝啦

st bit p1.3 定義io口oe bit p1.1 eoc bit p1.2 di bit p3.0 e bit p3.2 rw bit p3.1 res bit p1.0 x equ 40h 定義變數 y equ 42h upd equ 30h dod equ 31h org 00h 定義子...

微控制器(組合語言)需要的軟體,微控制器(組合語言)程式

51微控制器是襲keil 軟體 關鍵你學過什麼語言?如果學過c語言就用c,上手快。學過其他的高階語言也可以,和c也大都是相通的。要是學過彙編的話就用匯編,畢竟彙編對硬體的操作 建議你還是先學微控制器c語言,這樣不會因為彙編這個攔路虎,而降低你持續學習的熱情。微控制器 組合語言 程式 開發當bai然是...