第一題:
ASC:
PUSH ACC
ANL A,#0FH
ADD A,#30H
MOV R2,A
POP ACC
ANL A,#0F0H
SWAP A
ADD A,#30H
MOV R3,A
RET
第二題:
BCDZH:
MOV R0,#20H
MOV R1,#30H
MOV R2,#16
LOOP:
MOV A,@R0
MOV B,A
INC R0
MOV A,@R0
SWAP A
ORL A,B
MOV @R1,A
INC R0
INC R1
DJNZ R2,LOOP
RET
② 急急急 單片機 編程題
1. ORG OOOOH
LJMP MAIN
ORG O100H
MAIN: MOV R0,#15
MOV A,29H
LOOP: INC A
MOV DPTR,#3000H
MOVX @DPTR,A
DJNZ R0,LOOP
END
2. ORG OOOOH
LJMP MAIN
ORG O100H
MAIN:MOV R0,#29H
MOV R1,#10
MOV A,#0
LOOP:INC R0
ADD A,R0
INC R0
DJNZ R1,LOOP
MOV P1,A ;顯示結果
END
3. ORG 0000H
LJMP START
ORG 1000H
START: MOV P0,A ;從P0口發送
MOV R0,P1 ;從P1口接收
END
③ 求解單片機編程題目
一、將(0~99)的100個連續十進制數,依次存入首地址為2000H的RAM區的存儲單元中去。
MOV DPTR, #2000H
MOV A, #0
MOV R1, #100
LOOP:
MOVX @DPTR, A
INC A
INC DPTR
DJNZ R1, LOOP
SJMP $
二、定時/計數器進行初始化編程。
MOV TMOD, #01010001B
MOV TH1, #(65536-10000)/256
MOV TL1, #(65536-10000)%256
MOV TH0, #(65536-50000)/256
MOV TL0, #(65536-50000)%256
SETB TR1
SETB TR0
SETB ET1
SETB ET0
SETB EA
SETB PT1
CLR PT0
SJMP $
④ 單片機匯編編程實驗題求解,必採納
MOV 40H,#68H ;
MOV A,40H ;取壓縮BCD數。
ANL A,#0F0H ;屏蔽低4位,保留高4位。
SWAP A ;高低四位交換。
MOV 41H,A ;保存高4位。
MOV A,40H ;再取壓縮BCD數
ANL A,#0FH ;屏蔽高4位,保留低4位。
MOV 42H,A ;保存低4位。
⑤ 單片機復習題(C語言)
一. 填空題
1. MCS-51單片機是____8____位機,其最大程序容量可達___64_____K位元組,有_____4___個並行口和____32____條I/O管腳。
2. MCS-51單片機正常工作所必須的外部硬體電路是___電源_____、___時鍾_____、__復位______。
3. MCS-51單片機復位電平是___高_____電平,正常工作時復位端為__低______電平,復位後並所有行口的輸出為____高____電平。
4. MCS-51單片機內部結構中,四個基本功能單元分別是___CPU_____、__RAM______、____ROM____、___定時器計數器I/O口_____;三個擴展功能單元分別是____?____、___?____、___?_____。
5. MCS-51單片機內部RAM四個分區分別是__00H到1FH(R0-R7)可位定址____、____ _ 20H-2FH___、_30H-7FH__ _____、__80H-FFH______。
6. MCS-51單片機___P0_____口沒有內部上拉電阻;並行口作為輸入口使用時必須保證該埠場效應管__開漏______,即向該埠寫___0xff_____,此時該埠的輸出鎖存器Q端為___1(高電平)_____。
7. MCS-51單片機計數器工作在方式1和方式2的最大計數值分別是_____65536______、___256________。
8. MCS-51單片機若單片機的主時鍾振盪頻率為6MHz,定時器工作在方式1和方式2的最大定時時間分別是_____自己算!!______ms、___不懂看書!!________us。基本指令周期是___0.5-2_______us。
9. MCS-51單片機的五個中斷源分別是___INT0______、__T0_______、_____INT1_____、___T1______、___UART_______。
10. 編寫程序常用的三種程序結構是 __順序結構_______、__循環結構_______、___選擇結構_______。
11. C語言語法中,數據類型unsigned char 定義的是____8_____位無符號數;數據類型unsigned int定義的是___16______位無符號數。對8位和16位有符號數,定義數據類型關鍵詞為___signed char______、____short_____。
12. 單片機上電後是從主函數void main()的___0x0000H______位置運行。
13. 單片機C語言編程時必須有的固定結構的語句是#include <reg51.h>、void main()以及____while_____。
14. keil 集成開發軟體的三個主要功能是___編譯______、__調試_______、___模擬______。
15. 十進制數100對應的十六進制數是____64_____、二進制數是___01100100______。
二. 讀程序題
默認有關變數x、y、z、a、b、c、i均為unsigned int (8為無符號數)(這個是不是打錯了)請寫出局部程序運行後的結果,用十進製表示。
1. x = ___6___, y = ___3___, z = __11____ , a = ___5___, b = ___15___, c = ___252___。
x = 50/8; y = 100%12; z = 240+26;
a = z>>1; b = x | z; c = ~y;
2. x = _183_____, y = __10____, z = __11____ , a = __10____, b = __10____, c = ___10___。
x = 0xa5 ^ 0x12; y = 5*2; z = y++
a = --z; b = a & y; c = (a+z)/2;
3. x = ___6___, y = __12____, i = ___3___。
x=0;y=0;
for (i=1;i<=3;i++){
x = x+i;
y = y + i*2;
}
4. x = __20____, y = ___10___, z = ___81___ , a = __8____, b = ____9__,
c = __48____, i = ___8___。
a=0;
if (!a){
x=20; y=x<<2; z=y++;
}else{
x=10; y=x<<2; z=y++;
}
i=2<<2; y=10;
if (i>3 && y){
a=y & 0x0c;
b=++i;
c=x^y;
}
隨便做的,有些東東忘了!不懂的自己回去看看書去。