微控制器組合語言中MOVA,20H是什麼意思

2021-03-04 05:07:54 字數 4578 閱讀 3367

1樓:明傲雲撒情

就51微控制器組合語言而言,該指令是直接定址:

mova,

20h功能是將地址為20h的片內

回ram一個位元組內容送入累加器;答

.就80x86組合語言而方,該指令是立即定址:

movax,

20h功能是將立即數20h送入累加器a;

.這條指令,兩種機器的組合語言的定址方式容易被混淆。

微控制器組合語言中mov a,20h是什麼意思

2樓:可軒

就51微控制器組合語言而言,該指令是直接定址:

mov a, 20h 功能是將地址為20h的片內ram一個位元組內容送入累加器;

.就80x86組合語言而方,該指令是立即定址:

mov ax, 20h 功能是將立即數20h送入累加器a;

.這條指令,兩種機器的組合語言的定址方式容易被混淆。

3樓:凡人

是把微控制器內部ram中地址20h單元內容送累加器a。20h是可位定址的。

4樓:匿名使用者

把空格(20h) 給存貯器變數a

5樓:匿名使用者

20h是地址,這句話的意思是把地址20h裡的內容放入累加器a中。

6樓:匿名使用者

mov a,20h ;將記憶體20h單元中的值送入a,20h單元中的值保持不變

7樓:匿名使用者

把16進位制20h送到暫存器a 裡面...

請問學微控制器組合語言中 mov 20h , r0 與 mov 20h, @r0 什麼區別,什麼意思啊

8樓:匿名使用者

mov 20h,r0是

將抄r0儲存的內容

襲複製到20h

mov 20h,@r0是將r0內容指bai向的地址中的內容復du制給20h。比如

zhir0儲存的內容是30h,這指令的效dao果就相當於將30h的內容複製到20h。

是不是有點繞?

9樓:匿名使用者

直接定址和間接定址,這兩個你理解嗎?關於這方面的,一些書籍、資料一定介紹很清楚,希望認真看看書,祝你成功!

10樓:匿名使用者

一個是直接定址指令,一個是間接定址指令

如果 r0 = 0x8e

mov 20h , r0 // 20h = 0x8emov 20h, @r0 // 20h 等於存貯在地址為內0x8e的資料,@r0存放容的是地址 0x8e 的資料

11樓:匿名使用者

首先在微控制器的資料儲存器裡,都是使用十六進位制數來標識每一個儲存單版元的,比如51微控制器中資料儲存權器是00h~7fh的,而對於一些儲存單元又使用了特殊的名稱,例如00h儲存單元,又是我們常用的r0,也就是說一個儲存單元可能有多個名稱叫法。然而微控制器的資料也是一十六進位制形式儲存的所以在理解上就容易混淆,在下面的解釋中,請看清每個資料前面的強調修飾語

而這兩條語句就是如果 此時r0裡面的內容是5dh,那麼mov 20h,r0,就是說吧r0裡面的【資料】5dh存入20h【單元】,而mov 20h,@r0是個暫存器間接定址,就是說暫存器r0裡面【資料】是5dh,那麼現在程式自動找到5dh這個【儲存資料的單元】,把5dh【單元】內的【資料】存入20h【單元】,其中5dh【單元】裡的【資料】你就不用管了

請問學微控制器組合語言中 mov 20h , r0 與 mov 20h, @r0 什麼區別,什麼意思啊

12樓:金依波隗魁

首先在微控制器的來資料儲存器裡

自,都是使用十六進位制數來標識每一個儲存單元的,比如51微控制器中資料儲存器是00h~7fh的,而對於一些儲存單元又使用了特殊的名稱,例如00h儲存單元,又是我們常用的r0,也就是說一個儲存單元可能有多個名稱叫法。然而微控制器的資料也是一十六進位制形式儲存的所以在理解上就容易混淆,在下面的解釋中,請看清每個資料前面的強調修飾語

而這兩條語句就是如果

此時r0裡面的內容是5dh,那麼mov

20h,r0,就是說吧r0裡面的【資料】5dh存入20h【單元】,而mov

20h,@r0是個暫存器間接定址,就是說暫存器r0裡面【資料】是5dh,那麼現在程式自動找到5dh這個【儲存資料的單元】,把5dh【單元】內的【資料】存入20h【單元】,其中5dh【單元】裡的【資料】你就不用管了

13樓:羊舌火郜永

mov20h,r0是將r0儲存的內bai

容復du制到20h

mov20h,@r0是將r0內容指向zhi的地址中的內容複製給20h。比如r0儲存dao的內容是30h,這指令

版的效權果就相當於將30h的內容複製到20h。

是不是有點繞?

微控制器組合語言中$是什麼意思

14樓:匿名使用者

原地踏步的意思

等價於loop:sjmp loop

15樓:匿名使用者

$代指本指令的

地址。如果sjmp $的起始地址是1010h,則在編譯的時候編譯器把$編譯為這專個起始地址屬1010h,就等於sjmp 1010h,執行完這指令後還跳到這個地址再執行它。無限迴圈直到微控制器沒電。

16樓:

指當前地址,可以有多種應用。比如 goto $ 就表示停在當前了。goto $+n或-n表示調到n步前或後,可以用在迴圈控制中。

17樓:螞蟻叼骨頭

指的是原地址 只有跳轉的時候用到它 其他都不用到它的 原地跳轉

在微控制器組合語言中c是什麼意思

18樓:

進位標誌位cy或布林處理器中的累加器。

19樓:匿名使用者

c為進借位標誌位bai,就是ducy

意思是兩數相加zhi(addc指令)有進位就置c為1,兩數減dao(subb指令)有借內位就置c為1,

上面兩種請況c的置容1是系統自動的。

另外還可以自己對c進行操作 指令如下:

mov c, bit 將bit位地址中的值送psw中的進位標誌位cy

mov bit, c 將psw中的進位標誌位cy的值送bit位地址中

clr c 將進位標誌位cy清0

setb c 將進位標誌位cy置1

anl c, bit 將cy和bit位地址中的值進行與操作後,結果送cy

anl c, /bit bit位地址中的值取反後再與cy進行與操作,結構送cy

orl c, bit 將cy和bit位地址中的值進行或操作後,結果送cy

orl c, /bit bit位地址中的值取反後再與cy進行或操作,結構送cy

cpl c 將cy取反

還可以根據c的狀態分別執行轉移指令,如下

jc rel if(c=1)轉移到rel處執行指令

jnc rel if(c=0)轉移到rel處執行指令。

20樓:文香濤

在51微控制器中是借位/進位標誌

21樓:匿名使用者

c為進位標誌位,就是cy。。。

22樓:風間一葉

c為進借位標誌位,就是cy

意思是兩數相加(addc指令)有進位就置c為1,兩數減(subb指令)有借位就置c為1,

上面專兩種請況c的置1是系屬統自動的。

另外還可以自己對c進行操作 指令如下:

mov c, bit 將bit位地址中的值送psw中的進位標誌位cy

mov bit, c 將psw中的進位標誌位cy的值送bit位地址中

clr c 將進位標誌位cy清0

setb c 將進位標誌位cy置1

anl c, bit 將cy和bit位地址中的值進行與操作後,結果送cy

anl c, /bit bit位地址中的值取反後再與cy進行與操作,結構送cy

orl c, bit 將cy和bit位地址中的值進行或操作後,結果送cy

orl c, /bit bit位地址中的值取反後再與cy進行或操作,結構送cy

cpl c 將cy取反

還可以根據c的狀態分別執行轉移指令,如下

jc rel if(c=1)轉移到rel處執行指令

jnc rel if(c=0)轉移到rel處執行指令

還有什麼疑問可以繼續問

剛學微控制器,組合語言中,mov p1,0ffh與mov p1,0f0h都是什麼意思啊,求指教

23樓:匿名使用者

前面一個指令是讀引腳埠置1,在讀引腳之前必須先向埠寫1,是t2截止,才能正確讀到引腳內容;後面一個指令是保留p1埠高四位的資訊

24樓:匿名使用者

將ff和f0轉為2進位制看看。也就是11111111,11110000,那麼分別對應p1.0~p1.7你就知道是什麼狀態了

25樓:匿名使用者

靠 那個是天書 牛人啊

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

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

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

其他沒要求了?要是這樣,隨便寫寫的呀。清零程式 org 0000h ljmp start org 0030h start mov r7,mov r0,30h clr aloop mov r0,a inc r0 djnz r7,loopend 我的部落格上有,你可以去看看。51微控制器組合語言資料 一...

微控制器彙編程式求解,微控制器 組合語言編寫

嘿嘿 還是俺來幫你看看吧。1 原因找到了 你在第二段程式中 少了一條指令 使你的流水燈流到迴圈2就斷了。加上ljmp three 就可以跳轉到第三段流水燈控制程式上了。2 具體就是加在第二段程式的 cjne a,02h,loop3 指令的下面。即修改後 應如下 cjne a,02h,loop3 lj...