单片机原理及应用试题库-淮阴工学院 下载本文

250FH ACALL XHD ;PC+2?PC ,

?SP?1?SP,PC7~0?SP??? ?SP?1?SP,PC15~8?SP??addr?PC?10~0??MOV 20H,11H

2514H M5A:SJMP M5A XHD:PUSH 10H PUSH 11H POP 10H POP 11H RET

问:(1)执行POP 10H后堆栈内容?

(2)执行M5A:SJMP M5A后,(SP)= (20H)= 2.A程序存储空间表格如下:

地址 内容

已知:片内RAM的20H中为01H,执行下列程序后(30H)= MOV A,20H INC A

MOV DPTR,#2000H MOVC A,@A+DPTR CPL A MOV 30H,A SJMP $

3.(R0)=4BH,(A)=84H,片内RAM(4BH)=7FH,(40)=20H

MOV A,@R0 MOV @R0,40H MOV 40H,A MOV R0,#35H

问执行程序后,R0= A= 4BH= 40H= 4.若PSW=00, 执行下列程序后,PSW的各位状态如何?

MOV A,#0FBH MOV PSW,#10H ADD A,#7FH CY AC OV P OF RS1 2000H 3FH 2001H 06H 2002H 5BH 2003H 4FH 。。。。。 。。。。。 五. 程序填空(10分)

1.数据块传送,将RAM从30H开始的连续32个单元的内容传递给片内RAM从60H开始的连续32个单元。

ORG 1000H MOV R7,_____

MOV R0, #30H

MOV R1,#60H

LOOP:MOV A,@R0 MOV _____,A INC R0 INC R1 DJNZ R7, _____ SJMP $ END

2. 将4个单字节数放片内30H~~33H,它们求和结果放在片内40H,41H单元。

ORG 1000H MOV R7,#04H MOV R0,30H CLR A MOV 41H,A

LOOP: ADD A,@R0 JNC NEXT

INC _____

NEXT:INC _____

DJNZ R7,LOOP MOV 40H,A SJMP $ END

3. RAM中40H单元内存有一个十六进制数,把这个数转换为BCD码的十进制数,BCD码的十位和个位

放在累加器A中,百位放在R2中。 ORG 2200H MOV A,_____ MOV B,#64H DIV AB MOV R2,A MOV A,_____ XCH A,B DIV AB SWAP _____ ORL A,B SJMP $ END

4. 编程序将片内40H-46H单元内容的高4位清零,保持低4位不变。 ORG 1000H MOV R7,#07H

MOV R0,_____

LOOP:MOV A,@R0 ANL A,_____ MOV @R0,A

INC R0 DJNZ R7,LOOP SJMP $

END