文档库 最新最全的文档下载
当前位置:文档库 › 习题(指令与编程及答案)

习题(指令与编程及答案)

习题(指令与编程及答案)
习题(指令与编程及答案)

指令与编程及答案

一.单项选择题

1. ORG 0003H

LJMP 2000H

ORG 000BH

LJMP 3000H

2. 当CPU响应外部中断0后,PC的值是(A)。

A.0003H

B. 2000H

C. 000BH

D. 3000H

3. MCS-51的相对转移指令的最大负跳距离为( B )。

A.2KB

B. 128B

C.127B

D. 256B

4. 以下运算中对溢出标志0V没有影响或不受影响的运算是()。

A.逻辑运算

B. 符号数加减运算

C. 比较数据大小运算

D. 除法运算

5. 产生PSEN信号的指令是( C )。

A . MOVX A,@DPTR B. MOVX @DPTR, A

C. MOVC A , @A+PC

D. MOVX A, @A+DPTR

6. MOVX A , @DPTR指令中的源操作数的寻址方式是(B )。

A.寄存器寻址

B.寄存器间接寻址

C.直接寻址

D.立即寻址

7. 将MCS-51的工作寄存器置成3区的指令是(B )。

A. MOV PSW , #13H

B.MOV PSW , #18H

C. SETB PSW.4 ,CLR PSW.3

D.SETB PSW.3 ,CLR PSW.4

8. 指令AJMP的跳转范围是()。

A .256

B B.1KB C.2KB D.64KB

9. 6264芯片是()。

A.E2PROM

B.RAM C .Flash ROM D .EPROM

10. 下面那条指令产生WR信号( D )。

A.MOVX A , @DPTR

B.MOVC A , @A+DPTR

C.MOVC A , @A+PC

D.MOVX @DPTR , A

11. 执行LCALL 4000H指令时,MCS-51所完成的操作是( D )。

A.保护PC

B.保护现场

C.4000H →PC

D.PC+3入栈,4000H → PC

12. 下列指令中可能改变Cy的有()。

A.INC A

B.CPL A

C. RLC A

D.MOV A , #data

13.假定设置堆栈指针SP的值为36H,在执行指令PUSH 20H后,S P的值为( B )。

A.36H

B.37H

C. 38H

D.21H

14.PUSH ACC指令,MCS-51完成的操作是(A)。

A.(SP)+1→SP (ACC) → (SP)

B. (ACC) → (SP) (SP)-1→SP

C.(SP)-1→SP(ACC) → (SP)

D. (ACC) → (SP) (SP)+1→SP

15.MOV C, 00H 指令的第二操作数寻址方式是(A)。

A.位寻址

B. 直接寻址

C. 立即寻址

D. 寄存器寻址

16.在算术运算中,与辅助进位AC有关的是( C )。

A.二进制

B. 八进制

C. 十进制

D. 十六进制

17. 把P0口高四位变0,低四位不变,应使用指令( D )。

A. ORL P0,#0FH

B. ORL P0,#0F0H

C.ANL P0,#0F0H D. ANL P0,#0FH

18 ORG 0000H

AJMP 0040H

ORG 0040H

MOV SP,#00H

当执行完上面的程序后,PC的值是( C )。

A.0040H

B. 0041H

C. 0042H

D. 0043H

19. 在相对寻址方式中,“相对”两字是指跳转()。

A.地址偏移量rel

B. 当前指令的首地址

C.当前指令的末地址

D. DPTR值

20. 使用8051,且EA=1,则可以外扩ROM( B )。

A. 64KB

B. 60KB

C. 58KB

D. 56KB

21. 已知(31H)=21H,(32H)=04H,执行下列指令后,31H的内容为( B )。

PUSH 31H

PUSH 32H

POP 31H

POP 32H

A.21H

B. 04H

C. 32H

D. 31H

22. 已知(A)=00H,执行DEC A指令后,A的内容为( B )

A.00H B. FFH C. 01H D. 0FH

23.要用传送指令访问MCS-51片外RAM,它的指令操作码助记符应是( B )。

A. MOV

B. MOVX

C. MOVC

D. 以上都行

24.LCALL存于2000H开始的地址单元中,执行完相应子程序中的返回指令,PC=

( D )。

A.2000H B. 2001H C. 2002H D. 2003H

25.程序设计的方法一般有( D )

A.1种 B. 2种 C. 3种 D. 4种

26.在寄存器间接寻址方式中,指定寄存器中存放的是()

A. 操作数

B. 操作数地址

C. 转移指令

D. 地址偏移量

27. 当8031外扩程序存储器8KB时,常使用EPROM2716()

A. 2片

B. 3片

C. 4片

D. 5片

28. 中断服务程序的最后一条指令必须是( C )

A. END

B. RET

C. RETI

D. AJMP

29. ADC0809启动A/D转换的方式是( D )

A. 高电平

B. 低电平

C. 正脉冲

D. 负脉冲

30. MOV C,30H源操作数寻址方式为( D )

A. 立即寻址

B. 寄存器寻址

C. 寄存器间接寻址

D. 位寻址

31. POP A指令,MCS-51完成的操作是(A)

A. A←((SP)) SP←(SP)-1

B. SP←(SP)-1 A←((SP))

C. A←((SP)) SP←(SP)+1

D. SP←(SP)+1 A←((SP))

32. 当(RS1,RS0)=(1,1)时,工作寄存器R0对应内部RAM的( D )

字节单元。

A. 00H

B. 08H

C. 10H

D. 18H

33. 在R3初值为00H的情况下,DJNZ R3,rel指令将循环执行()

A. 0次

B. 256次

C. 128次

D. 10次

34. 执行AJMP addr11指令时,MCS-51完成的操作是()

A. 保护PC

B. PC←addr11

C. 保护现场

D. PC+2入栈PC0~10←addr11

https://www.wendangku.net/doc/1f16168191.html, 2000H

LCALL 3000H

ORG 3000H

RET

上面程序执行完R ET指令后,(PC)=( C )。

A. 2000H

B. 3000H

C. 2003H

D. 3003H

36.MCS-51执行完MOV A,#08H后,PSW的()位被置位。

A. C

B.F0

C. 0V

D. P

37. MCS-51的并行I/O口信息有两种读取方法,一种是读引脚,还有一种是(A)。

A. 读锁存器

B. 读数据

C. 读A累加器

D. 读CPU

38. 对程序存储器的读操作,只能使用( D )。

A. MOV指令

B. PUSH指令

C. MOVX指令

D. MOVC指令

39.ORG 8000H

D S 08H

DB 30H,8AH

则8008H单元内容为( B )。

A. 08H

B. 30H

C. 8AH

D. 不确定

40. MOV @R0, A指令目标操作数的寻址方式是(A)。

A. 寄存器间接寻址

B. 寄存器寻址

C. 直接寻址

D. 相对寻址

41. 已知(60H)=23H,(61H)=61H,运行下列程序62H内容为(A)。

CL R C

MOV A,#9AH

SUBB A,60H

ADD A,61H

DA A

MOV 62H, A

A. 38H

B. D8H

C. DBH

D. 3EH

42. 设系统的晶振频率为6MHZ,下列子程序DELA Y的延时时间约为()。DELAY:MOV R2,#0FAH

L2:DJNZ R2,L2

RET

A. 900μS

B. 1006μS

C. 500us

D. 5.501us

43. MCS-51的LJMP指令跳转空间为()。

A. 2K

B. –128~127

C. 64K

D. 32K

44. 关于MCS-51的堆栈操作,正确的说法是()。

A. 先入栈,再修改栈指针

B. 先修改栈指针,再出栈

C. 先修改栈指针,再入栈

D. 以上都不对

45. JNZ rel指令的寻址方式是()。

A. 立即寻址

B. 寄存器寻址

C. 相对寻址

D. 位寻址

46 . 8051执行ADD A,20H指令时,首先在P0口上出现的信息是()。

A. 操作码地址

B. 操作码

C. 操作数

D. 操作数地址

47. 必须进行十进制调整的十进制运算()。

A. 有加法和减法

B. 有乘法和除法

C. 只有加法

D. 只有减法

48. 执行MOVX @DPTR, A指令时,MCS-51产生()控制信号。

A. PSEN

B. WR

C. ALE

D. RD

49. 已知单片机系统的fosc=6MHZ,执行下列延时程序的时间为()。

DY2:MOV R6,#2

DLP1:MOV R7,#250

DLP2:DJNZ R7,DLP2

DJNZ R6,DLP1

RET

A.1ms B. 1.5ms C. 2ms D. 4ms

二.填空题(每小题1 分,共15分

1. 执行ANL A,#0FH指令后,累加器A的高四位= 。

2. 设DPTR=(2000)H,(A)=08H,则MOVC A,@A+DPTR的操作数的实际地址为。

3. 假定addrll=00100000000B,标号JAZ的地址为1030H,执行指令JAZ: AJMP addrll后,程序转移地址去执行。

4. JZ rel 的操作码的地址为1000H ,rel=20H ,他的转移目标地址为。

28.执行当前指令后,PC内容为。

5. 在寄存器间接寻址方式中,其“间接”体现在指令寄存器的内容不是操作数,而是操作数的。

6. 假定(A)=0FFH,执行指令INC A后,A的内容为。

7. MCS-51系统中,当PSEN信号有意义时,表示CPU要从存储器读取信息。

8.访问MCS-51程序存储器传送指令的操作码助记符应为_____________。

9.累加器(A)=7EH,(20H)=#04H,MCS-51执行完ADD A,20H指令后,PSW.0为

_____________。

10.INC指令_____________ CY位。

11.假定累加器A的内容为30H,执行指令1000H:MOVC A,@A+PC后,把程序存储

器_____________单元的内容送累加器A中。

12.在R7初值为00H的情况下,DJNZ R7,rel指令将循环执行_____________次。

13. MOV PSW,#10H是将MCS-51的工作寄存器置为第___________组。

14. 指令LCALL 37B0H,首地址在2000H,完成此操作后(PC)=___________。

15. 假定DPTR的内容为8100H,累加器A的内容为4DH,执行指令MOVC A,@A+DPTR后,送入A的是程序存储器___________单元的内容。

16. 累加器A中存放一个其值小于或等于127的8位无符号数,CY清“0”后执行RLC A 指令,则A中数变为原来的___________倍。

17. MCS-51的两条查表指令是________________。

18. 指令DJNZ R7,rel的指令操作码所在的地址为3000H,rel=EFH,则它的转移目的地址为________。

19. 通过堆栈操作实现子程序调用,首先要把________的内容入栈,以进行断点保护。

20. 调用返回时再进行出栈操作,把保护的断点弹回________。

21. 设(SP)=60H,(ACC)=30H,(B)=70H,执行指令PUSH ACC,PUSH B后,SP

289318805单片机原理及接口技术第3 页共9 页

的内容为_______。

22. 设(SP)=60H,(ACC)=40H,(B)=60H,执行PUSH ACC,PUSH B后61H 单元的内容为_______。

23. 设(SP)=60H,(ACC)=40H,(B)=80H,执行PUSH ACC,PUSH B,62H 单元的内容为________。

24. PC中存放的是____ _ ___。

25. ORL A, #0F0H是将A的高4位置1,而低4位_______________。

26. 一台计算机的指令系统就是它所执行的________________集合。

27. 累加器(A)=80H,执行完指令ADD A,#83H后,进位位C=____________。

28. 以助记符表示的计算机指令就是它的_____________语言。

29. SJMP rel的指令操作码地址为0050H,rel=65H,那么它的转移目的地址为

____________。

30. 执行如下指令序列后,所实现的逻辑运算式为______________。

MOV C,P1.0

ANL C,P1.1

ANL C,/P1.2

MOV P3.0 ,C

31. 当MCS-51引脚ALE信号有效时,表示从P0口稳定地送出了____________地址。

三、读程序回答

1. 试求下列程序依次运行后有关单元的内容。已知(R0)=24H,(Cy)=1, (1FH)=59H, (20H)=24H, (24H)=B6H 。(6分)

MOV A, 1FH ; (A)=______________

ADDC A, 20H ; 20H的寻址方式是

CLR A; (A)=______________

ORL A, @R0 ; @R0的寻址方式是,

; (A)=______________

CPL A; (A)=______________

答案:59H、直接寻址、00H、寄存器间接寻址、B6H、49H

SECH: MOV DPTR, #2000H

MOV R2, #0FH

MOVX A, @DPTR

MOV B, A

SLOP : INC DPTR

MOVX A, @DPTR

CJNE A, B, SLP1

SLP1: JNC SLP2

MOV B, A

SLP2: DJNZ R2, SLOP

MOV R2, B

RET

问:(1)此程序完成的是将从H单元开始的H个数中的最值找出,放在单元中。

(2)B寄存器里暂存最值。

(3)若要比较100个数,则哪句程序需要修改?(10分)

答案:(1)2000H、10H、小、R2

(2)小

(3)将第二句MOV R2, #0FH 改为MOV R2, #99

2. ORG 6000H ; ①

TAB : DB 45H,10,88H,’5’ ; ②

DW 12H,56H,7800H ; ③

ORG 8000H

MOV DPTR,#6001H

CLR A

MOVC A,@A+DPTR

MOV DPTR, #6005H

MOVX @DPTR, A

问:(1)根据①②③行指令内容,画出存储器从6000H—6009H中数据分布图。

(2)执行上面的程序,完成了什么功能?

(3)最后A的内容为多少?(10分)

6000H

6001H

(1)

(2)将从ROM 单元地址为6001H 的内容传送到片外数据RAM6005H 单元中。 (3)(A )=0AH

3. 已知某二进制数(10H )存在内部RAM50H 单元中,阅读下列程序,说明其功能。(6分)

MOV R0,#50H ; (R0)=____

MOV A, @R0H ; (A )= ,寻址方式是 。 CLR C

RLC A ; (A )=____

ADD A, R1 ; 寻址方式是 INC R0

MOV @R0, A ; @R0的地址是_______________ 答案:50H ,10H ,寄存器间接寻址,20H ,寄存器寻址,51H

4. START: MOV R0, #30H MOV R7,#0FH MOV DPTR, #3000H LOOP: MOV A, @R0

MOVX @DPTR, A INC R0 INC DPTR DJNZ R7, LOOP

6000H 6001H

6009H

45H 0AH 88H 35H 00H 12H 00H 56H 78H 00H

RET

(1)程序完成的什么功能?

(2)R7的作用是什么?

(3)RET指令完成什么功能?(10分)

答案:(1)程序将片内RAM中30H—3FH单元的内容传送到片外RAM地址为3000H—300FH中

(2)R7是计数器,初值表示传送数据个数,传送1个减1,当(R7)=0时,表示传送完。(3)返回到主程序的断点处。

https://www.wendangku.net/doc/1f16168191.html, 2000H

TAB1:DB 10H,22,‘A’

TAB2:DW 10H,2100H

ORG 3000H

MOV DPTR,#TAB2

MOV A,#2

MOVC A,@A+DPTR

问:(1)ROM2000H单元中的内容___________。

(2) 字符‘A’所在单元的地址为___________。

(3) 2005H单元中的内容为___________。

(4)执行程序后,DPTR的内容为___________。

(5) A的内容为___________。(10分)

答案:

(1)10H

(2)2002H

(3)21H

(4)2003H

(5)21H

6. 若(A)=FFH,(R0)=00H,(00H)=FFH,(CY)=0,位地址(00H)=1,将结果填入横线。(6分)

DEC A; (A)=_______

INC @R0 ; 此句将地址为___H的单元加1

SETB 00H ; 此句完成______功能

ANL C,00H ; (C)=______

ADD A, R0 ; 寻址方式=__________, (A)=__________

答案:FEH,00H,位地址为00H的单元置1。

0,寄存器寻址,FEH

7. START: MOV A, 40H

MOV DPTR, #TAB

MOVC A, @A+DPTR

MOV 40H, A

RET

TAB DB 30H, 31H, 32H, 33H, 34H

DB 35H, 36H, 37H, 38H, 39H

假设40H单元中的数的范围从0—9,问:

(1)这段程序完成什么功能?

(2)当执行程序前40H中的内容为6,问执行完这段程序后40H中的内容为_________。(3)MOVC A,@A+DPTR中的寻址方式是。(10分)

答案:(1)这段程序完成了通过查表得到40H单元的数的ASCII码,并将结果返回40H 单元。

(2)36H

(3)基址+变址的寻址方式

8. ADD3: MOV A, R5

ADD A, R2

MOV @R0 , A

INC R0

MOV A, R6

ADDC A, R3

MOV @R0, A

INC R0

MOV A, R7

ADDC A, R4

MOV @R0, A

RET

(1)程序完成什么功能?

(2)假设执行程序前R0=30H,程序执行结束后30H,31H,32H中的内容为___________,其中_________H中存放高字节

(3)执行结束后,CY的内容为。(10分)答案:①程序完成了两个3字节数的求和。

加数(1)在R7 R6 R5中,加数(2)在R4 R3 R2

②三个字节中和,32H。

③三字节和最高位的进位位。

9. 设(A)=5AH,(R1)=30H,(30H)=E0H,(CY)=1,根据程序填空。(6分)

SWAP A; (A)=_______

ADD A, #30H ; 寻址方式________

ADDC A, 30H ; (A)=______,寻址方式____

RLC A; (A)=______

ANL A, 30H ; (A)=______

答案:A5H

立即数寻址

B5H,直接寻址

6BH

60H

10. ADDIO: MOV R0, 30H

MOV R7, #9

MOV A, @R0

LOOP: INC R0

ADD A, @R0

DJNZ R7, LOOP

MOV 30H, A

RET

(1)程序完成的是什么功能?

(2)若把MOV R7,#9改成MOV R7,#4,程序功能有何变化?(10分)

答案:(1)将片内RAM从30H—39H十个单元中的内容相加,和存在30H中。

(2)不是10个数相加,是30—34H五个数相加。

11. LOOK:MOV 51H,#0

MOV R0,#30H

MOV R1, #20H

LOP:MOV A,@R0

CPL A

JNZ LP1

INC 51H

LP1: INC R0

DJNZ R1, LOP

RET

(1)R0的作用是什么?

(2)程序结束后51H单元中存放的内容是什么?

(3)若将JNZ LP1这句变成JZ LP1,程序完成什么功能?(10分)

答案:(1)数据单元指针。

(2)片内RAM30H—50H单元中内容为FFH单元的个数。

(3)将片内RAM30H—50H单元中内容为非FFH单元的总个数送给51H。

12. 设内RAM (20H)=11001011B,(24H)=01010111B,求依次执行下列

指令后的结果。(6分)

LOOP:JB 00H,LP1 ;

JB 26H,LP2 ; 程序跳转到LP1还是LP2?答________

Lp1: MOV A, 20H ; (A)=_____ , 寻址方式是______

CPL A(A)= ______

ADD A, 24H (A)= ______

JZ LP3 ; 执行完此句后,程序跳到LP3还是LP2处?

LP2: INC 20H

LP3: ┋

答案:Lp1

11001011B, 直接寻址

00110100B

10001011B

Lp2

13. ORG 2000H

TAB:DB 01, 02

DW 03, 04

DS 03H

ORG 2200H

MOV DPTR, #TAB

MOV A, #02H

MOVC A, @A+DPTR

问:(1)请填入存储器2000H~2008H单元的内容。

(2)执行完程序后A中的内容为________。

(3)DPTR是一个______字节的寄存器。(10分)答案:

(2)(A)=00H

(3)2

14. START:MOV DPTR, #2010 H

MOV R7, #10H

MOV R0, #30H

LOOP: MOVX A, @DPTR

MOV @R0, A

DEC DPTR

INC R0

DJNZ R7, LOOP

RET

(1)程序完成什么功能?

(2)MOVX A,@DPTR这句指令是什么寻址方式?

(3)DJNZ R7,LOOP 这句指令的含义?(10分)

答案:

(1)程序完成将片外RAM2010H单元—2001H单元的内容,依次传送到片内RAM30H—3FH 单元中去。

(2)寄存器间接寻址。

(3)判断(R7)-1 是否为0,若为0,结束循环,不为0继续到LOOP那儿循环。

15. 若(A)=78H,(R0)=34H,(34H)=DCH,(56H)=ABH,(cy)=1, 求分别执行下列指令后填空。(6分)

ADDC A,@R0 ; (A)=_______________, 寻址方式是________________

ORL A, #23H ; (A)=_______________,

; 寻址方式是_______________

MOV A, 34H ; (A)=_______________

SW AP A; (A)=_______________

答案:55H,寄存器间接寻址

77H,立即寻址

DCH,

CDH.

16. MOV A, R0

CPL A

JZ LABEL1

INC A

JZ LABEL2

LABEL1: INC A

SJMP LOOP

LABEL2: DEC A

LOOP: RET

问:(1)分析上面一段程序,何时转向LABEL1?何时转向LABEL2?

(2)若(R0)=FFH,执行完程序后(A)=_______________H。(10分)

答案:(1) 当R0 的值为FFH,转向LABEL1,当R0 为00时,转向LABLE2

(2)01H

17. START: MOV R0, #40H

MOV R7, #09H

MOV A, @R0

LOOP: INC R0

MOV 30H, @R0

CJNE A, 30H, NEXT

NEXT: JNC BIEI

MOV A, 30H

BIEI: DJNZ R7, LOOP

MOV 50H, A

RET

问:(1)A中暂放_________________。

(2)R7寄存器中保存的数是_________________。

(3)最后50H中存放的是___________________。(10分)

(1)最大

(2)比较的次数,共有9个数与A中的数做比较

(3)片内RAM 40H~49H中最大的值

18. 已知外RAM(2040H)=50H,ROM(2090H)=96H,内RAM(20H)=85H,试求下列程序依次运行后有关单元的内容。(6分)

MOV DPTR ,#2040H ; (DPTR)=_______________

MOVX A, @DPTR ; 寻址方式是_____________,(A)=_____________

MOV A, 20H ; (A)=______________

ANL A, #38H ; (A)=_______________,寻址方式是____________

答案:2040H

寄存器间址,50H

85H

00H 立即寻址

19. CLR C

LOOP1: MOV A, @R0

ADDC A, @R1

DA A

MOV @R0, A

INC R0

INC R1

DJNZ R7, LOOP1

CLR A

MOV ACC.0, C

MOV @R0, A

RET

问:(1)DAA指令有何用途?

(2)若执行程序前(R0)=20H,(R1)=30H,(R7)=03H,则程序完成什么功能?程序最后的结果放在哪些单元?(10分)

答案:(1)DAA是对A中的数进行十进制数的调整。

(2)将存放在(22H)(21H)(20H)中的BCD码与(32)

(31H)(30H)单元中的BCD码相加,结果调整为BCD码后放回(23H)

(22H)(21H)(20H)单元中,其中高地址存放高位字节。

20. MOV R0,#20H

SLOP: MOV A,@R0

JZ LP1

JB ACC.7, LP2

INC 30H

LP0: INC R0

DJNZ 1FH, SLOP

END

LP1: INC 31H

SJMP LP0

LP2: INC 32H

SJMP LP0

问:(1)若执行前(20H)单元中的内容为F1H,则程序能不能走到LP1处?

(2)执行前1FH单元中存放的是什么?

(3)执行后30H,31H,32H单元中各存放的什么数据?(10分)

(1)不能

(2)参加统计的数的个数

(3)30H中放正数的个数

31H中放“0”的个数

32H中放负数的个数

21. 已知(30H)=58H,读程序填空。(6分)

CLR C

MOV A,30H; 寻址方式是______, (A)=______

RLC A

RLC A; (C)=_______

ADD A, #36H ; 寻址方式是_______,(A)=_______

JZ LOOP2 ; 程序转至LOOP1还是LOOP2?答_______

Loop1: MOV A, 00H

直接寻址,58H

1

立即寻址,96H

LOOP1

22. (30H)=15H,问执行完程序后,A,B,SP,32H,33H ,34H的内容是多少?(10分)

MOV SP, #30H

XCH A, 30H

MOV B, A

ANL A, #0FH

MOV 33H, A

MOV A, B

PUSH A

SW AP A

ANL A, #15H

MOV 34H, A

PUSH A

答案:(A)=11H

(B)=15H

(SP)=32H

(32H)=11H

(33H)=05H

(34H)=11H

23. 内部RAM30H,31H单元中存放两个无符号数,读程序回答问题。(10分)

ORG 1000H

START:CLR C

MOV A,30H

SUBB A,31H

JC NEXT

MOV A,30H

XCH A,31H

MOV 30H, A

NEXT:NOP

SJMP $

END

(1)程序完成什么功能?

(2)若(30H)=89H,(31H)=F5H,执行程序后(30H)=____________, (31H)=_ __________,(Cy)=___________。

答案:(1)比较30H与31H中无符号数的大小,小数存于30H,大数存于31H (2)(30H)=89H,(31H)=F5H,(Cy)=1

四、编程题

1.编写程序,将外部RAM2000H-201FH数据块数据,传送到片内RAM40H-5FH的对应单元中,并统计其中数据‘0’的个数,将结果放入片内60H单元中。

答案:START: MOV DPTR,#2000H

MOV R0,#40H

MOV R1, #1FH

MOV R2,#00H

LOOP: MOVX A,@DPTR

MOV @R0, A

INC DPTR

INC R0

CJNE A, #00H, LOOP1

INC R2

LOOP1: DJNZ R1, LOOP

MOV 60H, R2

RET

2. 已知8位要显示数字已存放在首地址为30H的片内RAM中,试将其转换为共阴显示字段码,存入首址为40H的内RAM中,已知TABD为0-9共阴字段码表首址。

ORG 1000H

TABD:DB 3FH,06H,5BH,4FH,66H

DB 6DH,7DH,07H,7FH,6FH

答案:MOV DPTR,#TABD

MOV R2,#8

MOV R0,#30H

MOV R1,#40H

LOOP:MOV A,@R0

MOVC A,@A+DPTR

MOV @R1,A

INC DPTR

INC R0

INC R1

DJNZ R7,LOOP

END

计算机基础第2章实验(raptor实验)实验报告撰写要求

计算机基础实验报告 实验名称基于流程图的可视化程序设计 指导教师张冬慧 实验日期 专业电子信息科学与技术 学生姓名王雨琪 班级/学号电技1302 2013012649 成绩

实验一可视化程序设计环境入门 一.实验目的 (1)掌握可视化环境RAPTOR的安装和使用。 (2)熟悉RAPTOR中的基本概念。 (3)掌握RAPTOR的图形符号的使用方法。 (4)掌握使用RAPTOR绘制算法流程图的设计方法。 (5)掌握RAPTOR环境下一般算法的设计方法。 (6)通过RAPTOR的“帮助”菜单了解RAPTOR的运算符和内置常量等。二.实验内容 1. 实验题目:输入半径值,计算相应的圆周长和圆面积。 RAPTOR流程图:

程序运行结果(截图): 三.实验体会 实验二RAPTOR中选择结构算法设计 一.实验目的 掌握RAPTOR中包含分支结构的算法的设计。 二.实验内容 1. 实验题目:在RAPTOR编程环境中,编写并运行求解如下分段函数的算法。 RAPTOR流程图(截图):

程序运行结果(截图): 2. 实验题目:参照上述分段函数的算法设计,在RAPTOR编程环境中,编写并运行求解如下分段函数的算法。 RAPTOR流程图(截图): 程序运行结果(截图):

3. 实验题目:参照上述分段函数的算法设计,在RAPTOR编程环境中,编写并运行求解如下分段函数的算法:计算运费。 运费=重量(吨数)*路程(千米数)*折扣(按路程优惠) 其中,700km以上按90%计算,1000km以上按85%计算。 RAPTOR流程图(截图): 程序运行结果(截图):

Java程序设计习题附答案(一)

Java程序设计题库 第一部分绪论 1、下列关于Java语言的特点,描述错误的是(C) A.Java是跨平台的编程语言B.Java支持分布式计算 C.Java是面向过程的编程语言D.Java支持多线程 2、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?(B) A、安全性 B、多线性 C、跨平台 D、可移植 3、Java JDK中调试器的命令是(C)。 A、javac B、java C、jdb D、avah 4、运行jar文件中class文件需要在java命令后面加的参数为(A)。 A、-cp B-g C-d D-verbose 5、下面哪项在java中是不合法的标识符?(C) A、$user B、point C、You&me D、_endline 6、下面关于Java语言说法正确的是(ABCD)。 A、Java语言是面向对象的、解释执行的网络编程语言。 B、Java语言具有可移植性,是与平台无关的编程语言。 C、Java语言可对内存垃圾自动收集。 D、Java语言编写的程序虽然是“一次编译,到处运行”,但必须要有Java的运行环境。 7、在Java程序设计中,程序员创建()文件,然后编译器把它们转化为()文件。( B) A、源, HTML B、源, 字节代码 C、字节代码, 源 D、HTML, 字节代码 8、Java的JVM是指(B)。 A、由Java操作的家用设备(通常是一个漂亮的小烤箱) B、Java字节代码的解释程序 C、Java源代码的编译器 D、运行Java 所需的硬件设备 9、在Java中,关于CLASSPA TH环境变量的说法不正确的是(A)。 A、CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B、编译器用它来搜索各自的类文件。 C、CLASSPATH是一个目录列表。 D、解释器用它来搜索各自的类文件。 10、一个可以独立运行的Java应用程序(D)。

《程序设计基础》试卷B及答案

黄淮学院计算机科学系2007-2008学年度第一学期 期末考试《程序设计基础》B 卷 注意事项:本试卷适用于计科系06级本科计算机科学与技术专业学生。 1.__ ____函数是程序启动时惟一的入口。 2.算法的复杂性包含两方面: 和 。 3.已知 char c= 'a' ; int x=2,k; 执行语句k=c&&x++ ; 则x 为 ,k 为 。 4.数值0x34对应的十进制为 。 5.已知int a ; 则表达式”(a=2*3 , 3*8), a*10”的结果为_ _ ____,变量a 的值为___ ___。 6.面向对象程序开发步骤为: 、 和面向对象实现。 1.下列程序设计语言中( )是面向对象语言。 A. FORTRAN B. C 语言 C. C++ D. 汇编语言 2.下列关于注释的说法哪个是错误的( )。 A. 注释不是程序中的可执行语句 B. 注释对于程序的执行有很重要的意义 C. 注释将在程序的编译阶段被编译器剔除 D. 编程时在程序中添加适当的注释是一个良好的编程风格 3.算法设计应该遵守( )的设计原则。 A. 自底向上,逐步求精 B. 自顶向下,逐步求精 C. 自底向上,同步扩展 D. 自顶向下,同步扩展 4.下列语句执行后a 的值为( )。 int a=4, &z=a, k=3; a=k; z+=2; k++; A. 0 B. 4 C. 1 D. 5 5.以下程序执行后,屏幕输出为( )。 #include “iostream.h ” void fun(int d) {d++;} void main() { int d=3; fun(d); d++; cout<=’a ’)&&(d<=’z ’) B. ‘a ’<=d<=’z ’ C. (d>=’a ’)||(d<=’z ’) D. ‘A ’<=d<=’Z ’ 8.已知:int k=7, x=12; 则执行语句( )后x 的值为0。 A. x+=k-x%5; B. x+=(x-k%5); C. x%=(k-=5); D. (x-=k)-(k+=5); 9.运行下列程序,其输出结果为( )。 #include “iostream.h ” void main() { int x(5),y(5),z(5); y--&&++x&&z--||y++; cout<

ARM指令练习题

ARM指令练习题 1.已知R0=8,R2=5,执行MOV R0,R2,LSL #2后,r0=?,r2=? 2.已知r0=0x00000000,r1=0x00009000, men32[0x00009000]=0x01010101,mem32[0x00009004]=0x02020202 问执行以下指令后,r1,r0的情况 1)ldr r0,[r1,#0x4]! 2)Ldr r0, [r1,#0x4] 3)Ldr r0,[r1], #0x4 3.已知men32[0x80018]=0x03, men32[0x80014]=0x02, men32[0x80010]=0x01,r0=0x00080010, r1=0x00000000,r2=0x00000000,r3=0x00000000 问执行ldmia r0!,{r1-r3}后,r0,r1,r2,r3的情况 4.已知r1=0x00000002,r4=0x00000003,sp=0x00080014, 问执行stmfd sp!,{r1,r4}后, r1,r4,sp的情况 5.已知r0=0x0,cpsr=0xd3, 执行以下指令后r0的情况 MRS r0,cpsr BIC r0,r0,#0x80 6.初始值R2=5,R3=4,R4=3,执行指令SUBS R2, R3,R4,LSR #2后,寄 存器R2,R3的值分别是多少? 7.R4内容是4000H,4000H (4字节对齐)开始向上依次存放数据1,2,3, 4,5,执行指令LDMIA R4!,{R0,R1,R2,R3}后,R1中数据是? 8.R4内容是4000H,4000H (4字节对齐)开始向上依次存放数据1,2,3,4,5,执行 指令LDMIB R4!,{R0,R1,R2,R3}后,R1中数据是?

Python程序设计习题与答案

《P y t h o n程序设计》习题与参考答案 第1章基础知识 简单说明如何选择正确的Python版本。 答: 在选择Python的时候,一定要先考虑清楚自己学习Python的目的是什么,打算做哪方面的开发,有哪些扩展库可用,这些扩展库最高反复安装和卸载上。同时还应该注意,当更新的Python版本推出之后,不要急于更新,而是应该等确定自己所必须使用的扩展库也推出了较新版本之后再进行更新。 尽管如此,Python 3毕竟是大势所趋,如果您暂时还没想到要做什么行业领域的应用开发,或者仅仅是为了尝试一种新的、好玩的语言,那么请毫不犹豫地选择Python 系列的最高版本(目前是Python )。 为什么说Python采用的是基于值的内存管理模式? 答: Python采用的是基于值的内存管理方式,如果为不同变量赋值相同值,则在内存中只有一份该值,多个变量指向同一块内存地址,例如下面的代码。 >>> x = 3 >>> id(x) >>> y = 3 >>> id(y) >>> y = 5 >>> id(y) >>> id(x) 在Python中导入模块中的对象有哪几种方式? 答:常用的有三种方式,分别为 ?import 模块名[as 别名] ?from 模块名import 对象名[ as 别名] ?from math import * 使用pip命令安装numpy、scipy模块。 答:在命令提示符环境下执行下面的命令:

pip install numpy pip install scipy 编写程序,用户输入一个三位以上的整数,输出其百位以上的数字。例如用户输入1234,则程序输出12。(提示:使用整除运算。) 答: x = input('Please input an integer of more than 3 digits:') try: x = int(x) x = x else: print(x) except BaseException: print('You must input an integer.') import types x = input('Please input an integer of more than 3 digits:') if type(x) != : print 'You must input an integer.' elif len(str(x)) != 4: print 'You must input an integer of more than 3 digits.' else: print xoin(map(str,result)) x = input('Please input an integer less than 1000:') t = x i = 2 result = [] while True: if t==1: break if t%i==0: (i) t = t/i else: i+=1 print x,'=','*'.join(map(str,result)) 编写程序,至少使用2种不同的方法计算100以内所有奇数的和。 x = [i for i in range(1,100) if i%2==1] print(sum(x)) print(sum(range(1,100)[::2])) 编写程序,实现分段函数计算,如下表所示。

程序设计基础试题和答案解析二

《程序设计基础》考试试卷二 1.1966年,Bohra和Jacopini提出的三种基本程序设计结构是:________ A.if、while和for; B. switch、do-while和for; C.while、do-while和for; D.顺序结构、分支结构和循环结构。 2.算法的特征不包括:______。 A.有穷性 B.可行性 C.确定性 D.有1个或者多个输入。 3.C语言源程序的基本组成单位是______。 A.函数 B. 语句 C. 声明和语句 D. 文件 4.下列标识符中,只有______是合法的。 A.if B. 3ab C. Int D. A-4 5.下列常量中,只有______是合法的。 A.3e-0.3 B. ‘abc’ C. 02a1 D. ‘\377’ 6.下列说法中正确的是:______。 A.C语言中的for语句的三个表达式都可以省略,而且分号也可以省略。 B.宏替换比函数调用的执行速度慢。 C.实质上,C语言中的指针就是一个变量的地址。 D.C语言中的任何函数都可以由程序员命名。 7.C语言中,运算对象必须是整型的运算符是_______。 A./ B. % C. + D. - 8.以下叙述中错误的是_______。 A.C语句必须以分号结束 B.复合语句在语法上被看作一条语句 C.空语句出现在任何位置都不会影响程序运行 D.赋值表达式末尾加分号就构成赋值语句 9.以下叙述中正确的是_______。 A.调用printf函数时,必须要有输出项 B.使用putchar函数时,必须在之前包含头文件stdio.h C.在C语言中,整数可以以十二进制、八进制或十六进制的形式输出 D.调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码10.以下关于函数的叙述中正确的是_______。 A.每个函数都可以被其它函数调用(包括main函数) B.每个函数都可以被单独编译 C.每个函数都可以单独运行 D.在一个函数内部可以定义另一个函数 11.有以下程序段typedef struct NODE{ int num; struct NODE *next;

习题(指令与编程及答案)

一.单项选择题 1. ORG 0003H LJMP 2000H ORG 000BH LJMP 3000H 2. 当CPU响应外部中断0后,PC的值是()。 A.0003H B. 2000H C. 000BH D. 3000H 3. MCS-51的相对转移指令的最大负跳距离为()。 A.2KB B. 128B C.127B D. 256B 4. 以下运算中对溢出标志0V没有影响或不受影响的运算是()。 A.逻辑运算 B. 符号数加减运算 C. 比较数据大小运算 D. 除法运算 5. 产生PSEN信号的指令是()。 A . MOVX A ,@DPTR B. MOVX @DPTR, A C. MOVC A , @A+PC D. MOVX A, @A+DPTR 6. MOVX A , @DPTR指令中的源操作数的寻址方式是()。 A.寄存器寻址 B.寄存器间接寻址 C.直接寻址 D.立即寻址 7. 将MCS-51的工作寄存器置成3区的指令是()。 A. MOV PSW , #13H B.MOV PSW , #18H C. SETB PSW.4 ,CLR PSW.3 D.SETB PSW.3 ,CLR PSW.4 8. 指令AJMP的跳转范围是()。 A .256 B B.1KB C.2KB D.64KB 9. 6264芯片是()。 A.E2PROM B.RAM C .Flash ROM D .EPROM 10. 下面那条指令产生WR信号()。 A.MOVX A , @DPTR B.MOVC A , @A+DPTR C.MOVC A , @A+PC D.MOVX @DPTR , A 11. 执行LCALL 4000H指令时,MCS-51所完成的操作是()。 A.保护PC B.保护现场 C.4000H →PC D.PC+3入栈,4000H → PC 12. 下列指令中可能改变Cy的有()。

C++程序设计试题及答案

C++程序设计试题 一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。 ++源程序文件扩展名为( A ) A..cpp B..h C..1ib D..obj 2.在C++中使用流进行输入输出,其中专用于从键盘进行输入的流是( B ) 3.包含自定义头文件的预处理指令是( D ) A.#define<> B.#include C.#define D.#include"" 4.用于标识十六进制前缀或后缀是( D ) A.元 B.后缀L或e C.前缀零 D.前缀0x 5.设存在整型变量int x,则下列句与其它三项含义不同的是( A ) * p=&x; & p=x; & p=x; &p=x; 6.在定义类成员时,为产生封装性,则需使用哪个关键字( D ) 7.设函数void swap(int&,int&)将交换两形参的值,如两整型变量int a=10;int b=15; 则执行swap(a,b)后,a、b值分别为( C ) ,10 ,15

,10 ,15 8.函数默认参数在函数原型中说明,默认参数必须放在参数序列的( C) A.前部 B.中部 C.后部 D.两端 9.设存在函数int min(int,int)返回两参数中较小值,若求15,26,47三者中最小值,下列表达式中错误的是( B ) m=min(min(15,26),min(15,47)); m=min(15,26,47); m=min(15,min(47,26)); m =min(min(47,26),16); 10.下列函数不能和函数void print(char)构成重载的是(C ) print(int); print(char,char); print(char); print(int,int); 11.在下列成对的表达式中,运算结果类型相同的一对是( D ) /2和/ /和7/2 0和/2 l2.内联函数的特点是( D ) A.减少代码量,加快访问速度 B.减少代码量,减缓访问速度 C.增加代码量,减缓访问速度 D.增加代码量,加快访问速度

程序设计基础试题_03_答案.doc

学院领导 审批并签名 A / B卷 广州大学 学年第学期考试卷 课程高级语言程序设计考试形式(开/闭卷,考试/查)学院系专业班级学号姓名 分数 评分 一:选择题(每题3分,共60分) (1)若有以下定义: char a; int b; float c; double d; 则表达式a*b+d-c值的类型为(A)

A) double B) float C) int D) char (2)设a=1,b=2,c=3,d=4,则表达式:a=10 or a<=0 B)a>=10│a<=0 C)a>=10││a<=0 D)a>=10 ││ a<=0 (7)下列可 作为C语言赋值语句的是(C) A) x=3,y=5 B) a=b=6 C) i--; D) y=int(x); (8)设i是int型变量,f是float型变量,用下面的语句给这两个变量输 入值: scanf(i=%d,f=%f,&i,&f); 为了把100和765.12分别赋给i和f,则正确的输入为(A) A) 100765.12 B) i=100,f=765.12 C) 100765.12 D) x=100y=765.12 (9)给出以下定义: char x[ ]=abcdefg;

程序设计基础练习题(全答案版)

《程序设计基础——C#.NET》练习 参考答案: 一、选择题 https://www.wendangku.net/doc/1f16168191.html,的目的就是将____A____作为新一代操作系统的基础,对互联网的设计思想进行扩展。A.互联网 B. Windows C. C# D. 网络操作系统 2.假设变量x的值为10,要输出x值,下列正确的语句是__C__。 A.System.Console.writeline(“x”) B. System.Cosole.WriteLine(“x”) C. System.Console.WriteLine(“x={0}”,x) D. System.Console.WriteLine(“x={x}”) 3.要退出应用程序的执行,应执行下列的_A___语句。 A. Application.Exit(); B. Application.Exit; C. Application.Close(); D. Application.Close; 4.关于C#程序的书写,下列不正确的说法是__D________。 A.区分大小写 B.一行可以写多条语句 C.一条语句可以写成多行 D.一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法 5. 在C#语言中,下列能够作为变量名的是__C__。 A.if B. 3ab C. b_3a D. a-bc 7. 能正确表示逻辑关系“a≥5或a≤0”的C#语言表达方式是__D__。 A.a>=5 or a<=0 B. a>=5|a<=0 C. a>=5&&a<=0 D. a>=5||a<=0 8. 以下程序的输出结果是___C_____。 A. 5 B. 4 C. 6 D. 不确定 9. If语句后面的表达式应该是__A___。 A.逻辑表达式 B. 条件表达式 C. 算术表达式 D. 任意表达式10.有如下程序:

寻址方式及指令系统习题与解答

寻址方式及指令系统习题与解答 计算机科学与工程学院黄洪波2012年3月 一、单项选择题 1.设BX=2000H,SI=3000H,指令MOV AX,[BX+SI+8]的源操作有效地址为()。 A.5000H B.5008H C.23008H D.32008H 2.设DS=1000H,ES=2000H,BX=3000H,指令ADD AL,[BX]的源操作数的物理址为()。 A.13000H B.23000H C.33000H D.3000H 3.设DS=2000H,ES=3000H,SI=200H,指令MOV ES:[SI],AL的目的操作数的物理地址为()。 A.20200H B.30200H C.50200H D.200H 4.指令MOV MEM[BX],AX中的MEM是()。 A.原码B.反码C.补码D.移码 5.用来作为寄存器间接寻址的寄存器有()个。 A.8 B.6 C.5 D.4 6.指令MOV [BX+SI],AL中的目的操作数使用()段寄存器。 A.CS B.DS C.SS D.ES 7.指令MOV BX,[BP+5]中的源操作数使用()段寄存器。 A.CS B.DS C.SS D.ES 8.段内间接寻址只改变()中的内容。 A.CS B.IP C.CS和IP D.PSW 9.段间间接寻址只改变()中的内容。 A.CS B.IP C.CS和IP D.PSW 10.下述指令中不改变PSW的指令是()。 A.MOV AX,BX B.AND AL,0FH C.SHR BX,CL D.ADD AL,BL 11.下述指令中不影响CF的指令是()。 A.SHL AL,1 B.INC CX C.ADD [BX],AL D.SUB AX,BX 12.两个整数补码9CH和7AH相加运算后,会产生()。 A.无溢出且无进位B.无溢出但有进位

C语言程序设计习题及答案

C语言程序设计 一、选择题(共40分,每小题2分) 1、以下叙述不正确的是() A、一个C源程序可由一个或多个函数组成 B、一个C源程序必须包含一个main函数 C、C程序的基本组成单位是函数 D、在C程序中,注释说明只能位于一条语句的后面 2、下列四个选项中,是不合法的用户标识符的选项是() A、abc B、12AC C、sun D、 A2 3、设有语句int a=4;则执行了语句a+=a- =a*a后,变量a的值是() A、-24 B、0 C、4 D、16 4、下列运算符中优先级最高的是() A、< B、+ C、&& D、== 5、在C语言中,运算对象必须是整型数的运算符是() A、% B、/ C、%和/ D、 + 6、以下关于运算符的优先顺序的描述正确的是() A、关系运算符<算术运算符<赋值运算符<逻辑与运算符 B、逻辑与运算符<关系运算符<算术运算符<赋值运算符 C、赋值运算符<逻辑与运算符<关系运算符<算术运算符 D、算术运算符<关系运算符<赋值运算符<逻辑与运算符 7、在C语言中,如果下面的变量都是int类型,则输出的结果是()sum=pad=5;pAd=sum++,pAd++,++pAd; printf(“%d\n”,pad);

A、7 B、6 C、5 D、4 8、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是() A、 INPUT x、y、z; B、scanf(“%d%d%d”,&x,&y,&z); C、 scanf(“%d%d%d”,x,y,z); D、read(“%d%d%d”,&x,&y,&z); 9、假定从键盘输入23456< 回车 >,下面程序的输出结果是:() void main ( ) { int m,n; scanf(“%2d%3d”,&m,&n); printf(“m=%d n=%d\n”,m,n); } A、m=23 n=45 B、m=234 n=56 C、m=23 n=456 D、语句有错误 10、若运行时,给变量x输入12,则以下程序的运行结果是() main( ) { int x,y; scanf(“%d”,&x); y=x>12x+10:x-12; printf(“%d\n”,y); } A、 0 B、 22 C、 12 D、10 11、C语言中while和do-while循环的主要区别() A、do-while的循环体至少执行一次 B、while 的循环控制条件比do-while的循环控制条件严格 C、do-while允许从外部转到循环体内

西交大《程序设计基础》试题及答案

西交大《程序设计基础》试题及答案 一、单项选择题(本大题共20小题,每小题2分,共40分) 1.int a[10];合法的数组元素的最小下标值为()。A:10 B:9 C:1 D:0 答案:D 2.以下运算符中优先级最低的是()。A:&& B:& C:|| D:| 答案:C 3.若使用一维数组名作函数实参,则以下正确的说法是()。A:必须在主调函数中说明此数组的大小B:实参数组类型与形参数组类型可以不匹配C:在被调用函数中,不需要考虑形参数组的大小D:实参数组名与形参数组名必须一致答案:A 4.已知函数的调用形式:fread(buffer,size,count,fp);其中buffer 代表的是()。 A:一个整数,代表要读入的数据项总数B:一个文件指针,指向要读的文件C:一个指针,指向要读入数据的存放地址D:一个存储区,存放要读的数据项答案:C 5.对以下说明语句int a[10]={6,7,8,9,10}; 的正确理解是()。A:将5个初值依次赋给a[1]至a[5] B:将5个初值依次赋给a[0]至a[4] C:将5个初值依次赋给a[6]至a[10] D:因为数组长度与初值的个数不相同,所以此语句不正确答案:B 6.下列程序的输出结果是()。main() { int x=1,y=0,a=0,b=0; switch(x) { case 1:switch(y) { case case } case 2:a++;b++;break; case 3:a++;b++;break; } printf(\} A:a=1,b=0 B:a=2,b=1 C:a=1,b=1 D:a=2,b=2 答案:B 7.下列程序的输出结果为()。main() {int m=7,n=4; float a=38.4,b=6.4,x; x=m/2+n*a/b+1/2; printf(\ 0:a++;break; 1:b++;break; } A:27.000000 B:27.500000 C:28.000000 D:28.500000 答案:A 8.若k为int型变量,则以下程序段的执行结果是()。k=-8567; printf(\A:格式描述符不合

计算机组成原理,指令系统,练习题

单项选择题 1 在CPU执行指令的过程中,指令的地址由___B__给出。 A 程序计数器PC B 指令的地址码字段 C 操作系统 D 程序员 2 下列关于指令的功能及分类叙述正确的是__B___。 A 算术与逻辑运算指令,通常完成算术运算或逻辑运算,都需要两个数据 B 移位操作指令,通常用于把指定的两个操作数左移或右移一位 C 转移指令,子程序调用与返回指令,用于解决数据调用次序的需要 D 特权指令,通常仅用于系统软件,这类指令一般不提供给用户 3 零地址的运算类指令在指令格式中不给出操作数的地址,参加的两个操作数来自__C__。A累加器和寄存器 B 累加器和暂存器 C 堆栈的栈顶和次栈顶单元 D 堆栈的栈顶单元和暂存器 4 下列一地址运算类指令的叙述中,正确的是_____。 A 仅有一个操作数,其地址由指令的地址码提供 B 可能有一个操作数,也可能有两个操作数 C 一定有两个操作数,其中一个操作数是隐含的 D 指令的地址码字段存放的一定是操作码 5 关于二地址指令一下论述正确的是_____。 A 二地址指令中,运算结果通常存放在其中一个地址码所提供的地址中 B二地址指令中,指令的地址码字段存放的一定是操作数 C二地址指令中,指令的地址码字段存放的一定是寄存器号 D二地址指令中,指令的地址码字段存放的一定是操作数地址 6 单字长四地址指令OP A1、A2、A3、A4的功能为(A1)OP(A2)→A3,且A4给出下一条指令地址,假设A1、A2、A3、A4都为主存储器地址,则完成上述指令需访存_____。 A 1 B 2 C 3 D 4 7 在指令格式设计中,采用扩展操作码的目的是_____。 A 增加指令长度 B 增加地址码数量NN C 增加指令数量 D 增加寻址空间 8 某机器的指令字长为16位,有8个通用寄存器,有8种寻址方式,单操作数指令最多有_____个,双操作数指令最多有_____个。 A 1024 16 B 2048 32 C 256 64 D 1024 32 9 指令寻址方式有顺序和跳跃两种,采用跳跃寻址方式可以实现_____。 A 程序浮动 B 程序的无条件浮动和条件浮动 C程序的无条件转移和条件转移 D 程序的调用 10 某机器指令字长为16位,主存按字节编址,取指令时,每取一个字节PC自动加1,。当前指令地址为2000H,指令内容为相对寻址的无条件转移指令,指令中的形式地址D=40H。那么取指令后及指令执行后PC内容为_____。 A 2000H,2042H B 2002H,2040H C 2002H,2042H D 2000H,2040H 11 指令系统中采用不同的寻址方式的目的主要_____。 A 可降低指令译码难度 B 缩短指令字长,扩大寻址空间,提高编程灵活性

程序设计基础试题(附答案)

程序设计基础复习题 一、单选 1、一个完整的计算机系统应该包括() A、系统软件和应用软件 B、计算机及其外部设备 C、硬件系统和软件系统 D、系统硬件和系统软件 2、“裸机”的概念是指() A、正在进行设计还没有组装好的计算机 B、已经组装好但还没有安装任何软件的计算机 C、仅安装了操作系统的计算机系统 D、安装了文字处理软件但没有安装专用数据处理系统的计算机 3、世界上第一台电子数字计算机研制成功的时间是() A、1936年 B、1946年 C、1956年 D、1970年 4、CASE的含义是() A、计算机辅助设计 B、计算机辅助制造 C、计算机辅助教学 D、计算机辅助软件工程5、当前广泛使用的微型计算机是() A、第一代 B、第二代 C、第三代 D、第四代 6、当代计算机的体系结构称为是() A、冯·诺依曼机 B、非冯·诺依曼机 C、图灵机 D、比尔盖茨机 7、硬盘是() A、输入设备 B、输出设备 C、存储设备 D、计算设备 8、下面4句话中,最准确的表述是() A、程序=算法+数据结构 B、程序是使用编程语言实现算法 C、程序的开发方法决定算法设计 D、算法是程序设计中最关键的因素

9、计算机能直接执行的语言是() A、机器语言 B、汇编语言 C、高级语言 D、目标语言 10、解释程序的功能是() A、将高级语言程序转换为目标程序 B、将汇编语言程序转换为目标程序 C、解释执行高级语言程序 D、解释执行汇编语言程序 11、下面4种程序设计语言中,不是面向对象式语言的是() A、JAVA B、Object Pascal C、Delphi D、C 12、不是C语言的基本数据类型是() A、int B、double C、char D、bool 13、在C语言中,为了求两个整数相除之后得到的余数,可以使用运算符() A、/ B、% C、* D、++ 14、数据的逻辑结构分为() A、纯属结构和非线性结构 B、顺序结构和非顺序结构 C、树型结构和图型结构 D、链式结构和顺序结构 15、用链表表示纯属表的优点是() A、便于随机存取 B、便于插入和删除操作 C、花费的存储空间较顺序存储少 D、元素的物理顺序与逻辑顺序相同 16、栈的最主要特点是() A、先进先出 B、先进后出 C、两端进出 D、一端进一端出 17、下面4句结论只有一句是错误的,它是()

计算机程序设计基础习题册(含答案)

《计算机程序设计基础》 习 题 册

班级学号姓名成绩一、单选题 1.C++源程序文件的默认扩展名为A。 A) cpp B) exe C) obj D) lik 2.由C++源程序文件编译而成的目标文件的默认扩展名为C。 A) cpp B) exe C) obj D) lik 3.由C++目标文件连接而成的可执行文件的默认扩展名为B。 A) cpp B) exe C) obj D) lik 4.编写C++程序一般需经过的几个步骤依次是B。 A)编译、编辑、连接、调试 B)编辑、编译、连接、调试 C)编译、调试、编辑、连接 D)编辑、调试、编辑、连接 5.程序中主函数的名字为 A 。 A) main B) MAIN C) Main D) 任意标识符 6.下面四个选项中,均是不合法的用户标识符的选项的是C。 A) A p_o do B)float lao _A C)b-a goto int D)_123 temp INT 7.下列变量名中合法的是C。 A) B)C)Tom B) 3a66 C) _6a7b D) $ABC 8.存储以下数据,占用存储字节最多的是 D 。 A) 0 B) ‘0’ C) “0” D) 0.0 9.在C++语言中,字符型数据在内存中的存储形式是D。 A) 补码 B) 反码 C) 原码 D) ASCII码 10.若有说明语句:char c =’\072’;则变量c A。 A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法,变量的值不确定 二、填空题 1.C++头文件和源程序文件的扩展名分别为.h和.cpp 。 2.C++语言规定,标识符只能由字母、数字、下划线三种字符组成,而且第一个字符必须是字母或下划线。 3.一条表达式语句必须以__分号_;___作为结束符。 4.用于从键盘上为变量输入值的标准输入流对象是___cin____;用于输出表达式值的标准输出流对象是__cout____。 5.在一个C++程序文件中,若要包含另外一个头文件或程序文件,则应使用以_#include___标识符开始的预处理命令

关于习题二答案-单片机的指令系统

关于习题二答案-单片机的指令系统

1、执行下列3条指令后,30H单元的内容是( C )。 MOV R0,#30H MOV 40H,#0EH MOV @R0,40H A)40H B)30H C)0EH D)FFH 2、在堆栈中压入一个数据时(B)。 A)先压栈,再令SP+1 B)先令SP+1,再压栈 C)先压栈,再令SP-l D)先令SP-1,再压栈 3、在堆栈操作中,当进栈数据全部弹出后,这时的SP应指向 A 。 A)栈底单元 B)7FH

C)栈底单元地址加1 D)栈底单元地址减l 4、指令MOVC A,@A+PC源操作数的寻址方式是 D 。 A)寄存器寻址方式B)寄存器间接寻址方式 C)直接寻址方式D)变址寻址方式 5、ANL 20H,#30H指令中,源操作数的寻址方式是 A 。 A)立即寻址方式B)直接寻址方式 C)位寻址方式D)相对寻址方式 6、ANL C,/30H指令中,源操作数的寻址方式是 C 。

A)立即寻址方式 B)直接寻址方式 C)位寻址方式 D)相对寻址方式 7、Jz rel指令中,操作数rel的寻址方式是 D 。 A)立即寻址方式 B)直接寻址方式 C)位寻址方式 D)相对寻址方式 8、Jz rel指令中,是判断 A 中的内容是否为0。 A)A B) B C) C D)PC 9、MOVX A,@DPTR指令中源操作数的寻址方式是(B)

A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)立即寻址 10、下面条指令将MCS-51的工作寄存器置成3区(B) A)MOV PSW,#13H (B)MOV PSW,#18H 11、MOV C,00H指令中源操作数的寻址方式是(A) A)位寻址B)直接寻址 C)立即寻址 D)寄存器寻址 1、8051单片机共有7 种寻址方式。访问外部数据存储器应采用寄存器间接寻址方式。 2、访问外部数据存储器应采用寄存器间接寻址方式;查表应使用变址寻址方式。 3、在8051单片机中,堆栈操作的指令有PUSH 和 POP两个。 4、在8051单片机中,子程序调用的指令有ACALL 和 LCALL两个。 5、CJNE指令都是 3字节字节指令。

VB程序设计试题及答案一

V B程序设计试题及答案(一) 一、单选题 1. VB6.0是一种面向B 的编程环境。 (A) 机器(B) 对象 (C) 过程(D) 应用 2. 要使FormI窗体的标题栏显示"欢迎使用VB",以下D 语句是正确的。 (A) Forml.Caption=“欢迎使用VB” (B) Forml.Caption='欢迎使用VB' (C) Forml.Caption=欢迎使用VB (D) Forml.Caption="欢迎使用VB" 3. 若要使命令按钮不可操作,要对A 属性进行设置。 (A) EnabIed (B)Visible (C) Backcolor (D)Caption 4. 如果在窗体上已经创建了一个文本框对象TextI,可以通过C 事件获得输入键值的ASCII码。 (A) Change (B) LostFocus (C) KeyPress (D) GotFocus 5. 下面A 是合法的变量名。 (A) X_yz (B) 123ab。(C) integer (D) X-Y 6. 以下关系表达式中,其值为False的是A 。 (A) "ABC">"AbC" (B) "女">"男" (C) "BASIC"=UCase("basic) (D) "123"<"23" 7. 为了给x、y、z三个变量赋初值1,下面正确的赋值语句是A 。 (A) x=1:y=1:z=1 (B) x=1,y=1,z=1 (C) x=y=z=1 (D) xyz=1 8. VB提供了结构化程序设计的三种基本结构,三种基本结构是D 。 (A)递归结构、选择结构、循环结构 (B)选择结构、过程结构、顺序结构 (C)过程结构、输入输出结构、转向结构 (D)选择结构、循环结构、顺序结构 9. 下面If语句统计满足性别为男、职称为副教授以上、年龄小于40岁条件的人数,不正确的语句是 D 。 (A) If sex="男" And age=4O And InStr(duty,"教授")>O Then n=n+l (B) If sex="男" And age=4O And (duty="教授" Or duty="副教授") Then n=n+l (C) If sex="男" And age=4O And Right(duty,2)="教授" Then n=n+l (D) If sex="男" And age=4O And duty="教授" And duty="副教授" Then n=n+l 10.下列关于Do…Loop循环结构执行循环次数的描述正确的是D 。 (A) Do While…Loop循环和Do…Loop Until循环至少都执行一次 (B) Do While…Loop循环和Do…Loop Until循环可能都不执行 (C) Do While…Loop循环至少执行一次和Do…Loop Until循环可能不执行 (D) Do While…Loop循环可能不执行和Do…Loop Until循环至少执行一次 11.以下B 是正确的For…Next结构。 (A) For x=1 To Step 10 (B) For x=3 To -3 Step -3 ……

程序设计基础习题及参考答案

习题及参考答案 1 单项选择题: (1)下列哪个符号是合法的变量名? ( ) A .VB123 B .Abs C .99Ji D .x\y 答案: 选择A 。其他的:Abs 是Visual Basic 的关键字,99Ji 以数字开头,x\y 使用了整除运算符”\”,都是非法的。 (2)Visual Basic 中的数据也可以以十六进制或八进制表示,十六进制数据以( )符号开头,八进制数据以( )符号开头。 A.$E B.$H C.&O D.&H 答案:D C (3)如果X 是一个正实数,对X 的第三位小数四舍五入的表达式是 ( ) A .0.01*Int(x+0.005) B. 0.01*Int(100*(x+0.005)) C. 0.01*Int(100*(x+0.05)) D. 0.01*Int(x+0.05) 答案: 选择B 。x 是一个正实数,要保留n 位小数,第n+1位四舍五入的数字公式是: Int(x*10n +0.5)/10n 因此,本题应该选择B 。 (4)数学式子10sin25°写成Visual Basic 表达式是 ( ) A .10Sin25 B .10* Sin(25) C .10*Sin(25°) D .10*Sin(25*3.14/180) 答案: 选择D 。其他的选项:A 、C 属于语法错误,B 中Sin(25)计算的是25弧度的正弦值,而不是sin25°的值,要将度数转换为弧度的公式是:弧度=度数*180/ 。 (5)下列哪组语句可以将变量A 、B 的值互换? ( ) A .A=B:B=A B. A=A+B:B=A-B:A=A- B C. A=C:C=B:B=A D. A=(A+B)/2:B=(A-B)/2 答案: 选择B 。应该对每个选项内的赋值语句进行分析,判断其运行结果。 下面仅对B 选项的三条语句的作用分析如下: ◆ A=A+B ‘将变量A 和变量B 相加后赋给变量A ,此时A 中存放的是和数 ◆ B=A-B ‘由于A 中存放的是和数,A-B 的值就是原先A 中的值,赋给变量B ,B 的 值就是原先A 中的值 ◆ A=A-B ‘由于A 中存放的是和数,B 的值就是原先A 中的值,A-B 的值就是原先B 中的值 ,赋给变量A ,A 的值就是原先B 中的值。 这样达到了交换目的。 实际上,在引用第三个变量的情况下,将变量A 、B 的值互换常用如下的语句: T=A:A=B:B=T (6)Visual Basic 中不存在下列哪一种数据类型? ( ) A 字符串类型 B 日期类型 C 逻辑类型 D 指针类型 答案: 选择D 。在Visual Basic 中不存在指针(地址)类型,而在C++等语言中有指针类型。 (7)把数值型转换为字符串型需要使用下列哪一个函数? ( ) A Val B Str C Asc D Chr

相关文档
相关文档 最新文档