?2010年4月全國自考(微型計算機原理與接口技術)真題試卷
一、1.單項選擇題
0. 無符號數10110011 B所對應的十六進制數是( )
A.33H
B.A3H
C.B3H
D.C3H
1. 二進制數10000000“減”二進制數00000001的運算結果是( )
A.00000001
B.10000001
C.O1111111
D.11111110
2. 在計算機中的數據都是用二進制表示的,表示二進制數據的最小單位是( )
A.位
B.字
C.字節(jié)
D.雙字
3. 負數用原碼和反碼表示時,它們符號位的值分別是( )
A.0 0
B.0 1
C.1 0
D.1 1
4. 表達式7/3的值是( )
A.1
B.2
C.2.3
D.2.5
5. 在進行文件的隨機讀寫時需要用到fseek()函數,語句fseek("myFile.dat",20,0);表示的含義是( )
A.文件的位置指針從myFile.dat文件的開始位置向文件的末尾方向移動20個字節(jié)
B.文件的位置指針從myFile.dat文件的當前位置向文件的末尾方向移動20個字節(jié)
C.文件的位置指針從myFile.dat文件的當前位置向文件的頭方向移動20個字節(jié)
D.文件的位置指針從myFile.dat文件的末尾位置向文件的頭方向移動20個字節(jié)
6. 常用8051單片機數據總線的位數為( )
A.4位
B.8位
C.12位
D.16位
7. 8051系列單片機具有并行I/O口的數量及每個口的倍數分別是( )
A.2個,8位
B.3個,16位
C.4個,4位
D.4個,8位
8. 8051單片機片內RAM中,位尋址區(qū)的地址范圍是( )
A.0~0FH
B.10H~lFH
C.20H~2FH
D.30H~3FH
9. 決定程序執(zhí)行順序的寄存器是( )
A.PC
B.DPTR
C.SP
D.PSW
10. 已知(SP)=40H,RAM(60H)=FFH,執(zhí)行PUSH 60H后,(SP)為( )
A.3FH
B.41H
C.60H
D.FFH
11. 執(zhí)行下列三條指令后 MOV A,#66H ADD A,#58H DA A 累加器A的內容為( )
A.14H
B.1EH
C.24H
D.BEH
12. 已知(A)=23H,在ROM 4300H單元起存放指令CJNE A,#23H,51H,則執(zhí)行完此指令(三字節(jié))后,程序轉向地址( )
A.4302H
B.4303H
C.4353H
D.4354H
13. 已知(CY)=1(A)=0FH,要使結果為(CY)=0 (A)=1FH,則需執(zhí)行指令 ( )
A.RLC A
B.RRC A
C.RL A
D.RR A
14. 8K字節(jié)的RAM 6264,數據線的根數應為( )
A.4
B.8
C.16
D.32
15. 8031單片機擴展外部存儲器時,用作數據總線的接口是( )
A.P0
B.P1
C.P2
D.P3
二、2.填空題
0. 單片機是一種特殊的超大規(guī)模集成電路,具有數據處理能力,可實現復雜的軟件功能,因為單片機內部含有______。
1. 字符a的ASCⅡ碼是十進制的97,執(zhí)行了語句char c="c";printf("%d,%d",c,c+2);后將輸出______。
2. 代數式的c語言的表達式為______。
3. 對于單向值傳遞,函數調用時把實參傳遞給形參,形參的值發(fā)生改變,而其對應的實參值______。
三、3.改錯題
0. #include<stdio.h>
main()
{int num;
scanf("%d",&num);
if(num%2=1)
printf("這是一個奇數
”);
else
printf("這是一個偶數
");
}
錯誤:______
改正:______
1.
#include<stdio.h>
main()
{int i=0,num;
float sum=0:
do{++i;
num=1.0/i;
sum+=num;
}while(num>0.000001);
printf("sum=%f
",sum);
}
錯誤:______
改正:______
2. #include<stdio.h>
#include
main()
{int i,a[10];
char b[10];
for(i=0;i<10;++i)
scanf("%d",a+i);
b="10 number":
printf("%s
",b);
for(i=0;i<10;++i)
printf("%d";a[i]);
printf("
");
}
錯誤:______
改正:______
3. #include <stdio.h>
struct date
{int year=2010;
int month=1;
int day=1;
}datel;
main()
{struct date date2;
date2.year=2010;
date2.month=8:
date2.day=5;
printf("日期1:%d-%d-%d
",date1.year,date1.month,date1.day);
printf("日期2:%d-%d-%d
",date2.year,date2.month,date2.day);
}
錯誤:______
改正:______
四、4.程序閱讀題
0. #include<stdio.h>
main()
{int a=2008,b=1864,e=1950,t;
if(a>b)
{t=a;a=b;b=t;}
if(a>c)
{t=a;a=c;c=t;}
if(b>c)
{t=b;b=c;c=t;}
printf("%d %d %d
",a,b,c);
}
程序運行結果為:
1. #include<stdio.h>
main()
{int i,x;
i=0;
do
{scanf("%d",&x);
i++:
}while(x%3!=0 ‖x%5!=0);
printf("輸入數據的個數i=%d
",x);
}
程序運行時,輸入數據為:1 2 3 4……直到程序結束。
程序運行結果為:
2. #include<stdio.h>
int f(t)
int t;
{int x;
if(t<=1)x=1;
else x=t*f(t-1);
return x;
}
main()
{int t,x;
t=4;
x=f(t);
printf("t=%d",t);
printf("x=%d
",x);
}
程序運行結果為:
3. #include<stdio.h>
main()
{char a[30]="Bejjing";
char b[30]="Shanghai";
char*pa=a,*pb=b;
while(*pa!=0)
pa++;
while(* pb!=0)
{*pa=*pb;pa++;pb++;)
*pa=0;
printf("%s
",a);
}
程序運行結果為:
五、5.程序設計題
0. 利用隨機函數rand()生成10個整型隨機數,輸出它們之中的最大值和最小值;如果把最大值和最小值之和的一半稱為中間值,輸出所有大于中間值的數。
六、6.填空題-單片機原理與接口技術
0. MCS-51單片機把堆棧開辟在______中,其數據進出的最大特點是______。
1. MCS-51單片機中規(guī)定1個機器周期包含______個時鐘周期,所以晶體振蕩頻率為12MHZ時,其機器周期為______μs(微秒)。
2. 在ROM 6547H單元起存放指令SJMP D9H,則執(zhí)行完此指令(兩字節(jié))后,程序轉向地址______H。
3. 已知(A)=4EH,(R1)=63H,執(zhí)行指令XCH A,R1后,(A)=______H,(R1)=______H。
4. 一條機器指令由______和______兩部分組成。
5. 執(zhí)行下列三條指令后,(A)=______H (B)=______H。
MOV A,#31H
MOV B,#04H
MUI AB
6. CPU響應中斷,開始執(zhí)行中斷服務程序前,堆棧棧頂的內容是本次中斷的______。
7. 8031單片機串行口的中斷服務程序入口地址是______H。
七、7.改錯題-單片機原理與接口技術
0. 下列子程序欲將累加器A中的一個兩位BCD碼數轉換為二進制數,仍存于A中。
TB:MOV 40H,A
SWAP A
ANL A,#0FH:
MOV B,#10
MUL AB
ANL 40H,#0FH
ORL A,40H
RET
錯誤:______
改正:______
1. 下列是中斷初始化程序段,要求8031單片機允許T0、T1、INT1和串行口中斷,其中T0是最高中斷級。
MOV IP,#0000 0001 B
MOV IE,#1001 1110 B
錯誤:______
改正:______
八、8.程序閱讀題-單片機原理與接口技術
0. 8031單片機時鐘頻率為12MHz,運行以下程序后,P1.0口將產生矩形波的周期為______mS,高電平時間為______mS。
ORG 0000H
LJMP BEG
ORG 001BH
DJNZ R7,TRET
CPL P1,0
MOV R7,#5
JB P1,0.TRET
MOV R7,#10
TRET:RETI
BEG:MOV TFMOD,#20H
MOV TH1,#56 ;T1 0.2mS 中斷時間常數
MOV TL1,#56
MOV R7,#10
CLR P1.0
SETB TR1
MOV IE,#8H
SJMP $
1. 已知:(30H)=83H,(31H)=0ABH,(32H)=16H,(33H)=89H,(34H)=19H,執(zhí)行以下子程序后:
MOV R0,#30H
MOV R7,#0
MOV R6,#0
MOV R2,#4
LOOP:MOV A,@R0
ADD A,R6
MOV R6,A
JNC CONT
INC R7
CONT:INC R0
DJNZ R2,LOOP
RET
結果為=(R7)=______H,(R6)=______H,(R2)=______H,(RO)=______H。
九、9.程序設計題-單片機原理與接口技術
0. 在片外RAM 4000H單元開始存放16個單字節(jié)數,將其中非零的數傳送到片內RAM 20H開始的單元,并將其個數存于寄存器R6中。請接著以下程序,補全缺少的部分。
MOV R6,#OOH
MOV R7,#16
MOV R0,#20H
MOV DPTR,#4000H
SJMP $
十、10.微型計算機原理與接口技術-應用題
0. 8051單片機實驗裝置中的掃描式數字顯示部分如題43圖所示,6個共陽極LED的段驅動由P2口經8路反相驅動器提供,位驅動由P1.5~P1.0口經6路同相驅動器提供。以下程序段,使用定時器TD產生2ms中斷(時鐘頻率12MHz),將緩沖區(qū)40H~45H(對應LED從左到右)的低4位中的16進制數,轉換成顯示代碼,在LED上掃描顯示。
ORG 0000H
AJMP START
ORG 000BH
MOV TL0,# ① H ;定時器11D時間常數
MOV TH0,# ② H
MOV A.@R0
LCALL LDCODE
MOV P2, ③
MOV P1, ④
TNC R0
MOV A.R7
RR A
MOV R7.A
JNB ⑤ ,T0_2
MOV R0,#4OH
MOV R7,#20H
T0_2:RETI
START:MOV TMOD,# ⑥ H
MOV TL0,# ① H
MOV THO,# ② H
MOV R0,#40H
MOV R7,#20H
MOV IE,#82H
SETB ⑦
LOOP: SJMP LOOP
LDCODE: ANL A,#0FH
INC A
MOVC ⑧
RET
DB 3FH,06H,5BH,4FH,66H,……; 顯示代碼
①______;②______;③______;④______;
⑤______;⑥______;⑦______;⑧______。
附:有關特殊功能寄存器各位內容:
延伸閱讀
- 2023年10月自考00257票據法真題
- 2023年10月自考00249國際私法真題
- 2023年10月自考00246國際經濟法概論真題
- 2023年10月自考00245刑法學真題
- 2023年10月自考00186國際商務談判真題
- 2023年10月自考00185商品流通概論真題
自考微信公眾號
掃碼添加
自考備考資料免費領取
去領取