1樓:但行耕耘莫問收穫
程式如下:
org 0000h
jmp main
org 0030h
main: mov sp,#68h
mov r7,#08h
mov r0,30h
mov r1,40h
loop: mov a,@r0
mov b,@r1
add a,b
mov @r0,a
inc r0
inc r1
djnz r7,loop
jmp $end
2樓:做而論道
下列程式,可以滿足題目要求:
org 0000h
sjmp main
org 0030h
main:
mov r7, #08h
mov r0, #30h
mov r1, #40h
clr c
loop:
mov a, @r0
addc a, @r1
mov @r0,a
inc r0
inc r1
djnz r7, loop
sjmp $end
3樓:寶可嘉
mov r1,08h
mov r2,30h
mov r3,40h
mov a,r2
loop:
add a,@r3
mov @r2
inc r2
inc r3
djnz r1 ,loop
4樓:匿名使用者
org 0000h
jmp main
org 0030h
main: mov sp,#68h
mov r7,#08h
mov r0,30h
mov r1,40h
loop: mov a,@r0
mov b,@r1
add a,b
mov @r0,a
inc r0
inc r1
djnz r7,loop
jmp $end
微控制器程式設計題怎麼做?組合語言 100
5樓:匿名使用者
keym equ p3.2
keys1 equ p3.3
keys2 equ p3.4
led equ p2.0
beep equ p2.1
org 0000h
ljmp main
org 0030h
main:
jb keym,main
jb keys1,main1
main1:
clr led
clr beep
lcall delay
sjmp main
main2:
jb keys2,main3
sjmp main1
main3:
clr beep
sjmp main
delay:
mov r2,#20
dly1:
mov r3,#200
dly2:
mov r4,#250
djnz r4,$
djnz r3,dly2
djnz r2,dly1
retend
51微控制器程式設計題,用組合語言怎麼做?
6樓:沙裡波特
一道小題,簡單寫寫,就夠用了。
本程式,經過了實驗,符合題目要求。
關於微控制器的一個小題目,用組合語言怎麼寫出該題目程式**? 20
程式設計題(微控制器)組合語言
7樓:做而論道
定時器t1設定為外部事件計數器,要求每計500個脈衝,
t1轉為定時方式,在p1.2輸出一個脈寬10ms的正脈衝。
設系統時脈頻率為12mhz.
org 0000h
;-----------------------------------
start:
clr p1.2
clr tr1
mov tmod, #50h ;t1計數方式1
mov th1, #(65536 - 500) / 256 ;計數值為500
mov tl1, #(65536 - 500) mod 256
setb tr1
jnb tf1, $
clr tf1
;-----------------------------------
setb p1.2
clr tr1
mov tmod, #10h ;t1定時方式1
mov th1, #(65536 - 10000) / 256 ;定時10000us
mov tl1, #(65536 - 10000) mod 256
setb tr1
jnb tf1, $
clr tf1
sjmp start
;-----------------------------------end
8樓:匿名使用者
#include
#define uint unsigned intuint times=0;
bit flag;
void t1isr() interrupt 3else}}
main()
9樓:匿名使用者
利用定時器中斷實現的任務,請編譯一下,若有問題歡迎追問。
oorg 0000h
sjmp main;跳轉到主程式
org 001bh
ajmp timer1_interrupt;跳轉到定時計數器t1中斷子程式
main: clr p1.2;清p1.
2mov tmod,#50h;配置t1為外部16位計數mov th1,#0fe;配置t1暫存器外部計數500個脈衝初值mov th0,#0ch
setb et1;使能t1中斷
setb tr1;使能t1計數
setb ea;開全域性中斷
jb a8h.3,$;等待中斷暫存器ie的et1位清0mov tmod,#10h;;配置t1為10ms定時器mov th1,#0d8h;配置t1暫存器10ms定時計數初值,按12mhz頻率計算出來的
mov tl1,#0f0h
setb p1.2;置位p1.2,10ms正脈衝上升沿setb et1;使能t1中斷
setb tr1;使能t1計數
loop: jb a8h.3,loop;等待10msajmp main;返回開始處繼續下一輪500個脈衝計數timer1_interrupt:
;t1中斷子程式clr et1;禁止t1中斷
clr tr0;禁止t1計數
reti;中斷返回
我這有一個mcs-51微控制器程式設計題(用組合語言)急求答案。各位哥哥姐姐幫忙啊!題目見下邊
10樓:趙賀彩
loop4:mov r5,#30
loop2:mov a,20h
jnb acc.7,loop1
movx @r1,a
mov 51#,@r1
inc r6
loop1:movx r0,a
mov 21#,@r0
inc r7
cjne a,#100,loop3
jc loop3
hbcd: mov b,#100
div ab
mov r3,a
mov a,#10
xch a,b
div ab
swap a
add a,b
retloop3:mov a,aah
djnz r5,loop4
mov 20h,r6
mov 50h,r7
11樓:匿名使用者
離問題結束還有 14 天 23 小時
12樓:做而論道
再明確一下:
將正數放到外部儲存區21h單元開始的區域,20h單元存放「正數」的個數,
將負數放到外部儲存區51h單元開始的區域,50h單元存放「正數」的個數,
--50h單元應該是存放「負數」的個數,對吧?
對於分離出來的正數作如下處理,將小於100的數改成壓縮bcd碼的表示形式,其它資料全部改成aah,經過處理以後的資料仍然存放在原地址單元。
--「原地址單元」是指「片內ram20h開始的單元」?
--還是「外部儲存區21h單元開始的區域」?
微控制器組合語言問題
建議你用定時中斷方式,下面的供參考 org 0000h ajmp start org 001bh ljmp time1 定時中斷1入口 org 0030h start mov 30h,0 mov 31h,0 mov 32h,0 mov 33h,0 mov p2,0ffh mov dptr,table...
微控制器串列埠通訊問題(組合語言),微控制器串列埠通訊問題(組合語言)
這倆程式,執行到最後邊,都是 ret,返回指令。返回到何處去呀?呵呵,還是,先解決程式結構的問題。1 程式結構 有問題,沒有呼叫子程式 就不應該有子程式返回指令。2 jnb ti,clr ti 為判斷 串列埠 是否 傳送 完畢的,3 jnb ri,clr ri 為判斷 串列埠 是否 有接收 的,如果...
at89c51微控制器怎麼用組合語言寫「多個延時程式」
微控制器組合語言中要使一個延時程式可以被不同情況下呼叫而延時不同的時間,可以通過類似於c語言中傳遞引數的方式來實現,舉例如下 org 0000h ljmp main org 0030h main mov p0,5ah p0上的led燈間隔點亮mov r7,50 r7是延時傳遞引數lcall dela...