2022年4月自考02205微型计算机原理与接口技术试题(历年真题)

2022年4月自考微型计算机原理与接口技术真题试卷出来了,免费下载哦,欢迎有需要的同学下载学习哦,此外还包含2022年4月高等教育自学考试全国统一命题考试真题试卷免费下载。

绝密★启用前

2022年4月高等教育自学考试全国统一命题考试微型计算机原理与接口技术

(课程代码02205)

注意事项:

  1. 本试卷分为两部分,第一部分为选择题,第二部分为非选择题。
  2. 应考者必须按试题顺序在答题卡(纸)指定位置上作答,答在试卷上无效。
  3. 涂写部分、画图部分必须使用2B铅笔,书写部分必须使用黑色字迹签字笔。

点击免费下载:2022年4月高等教育自学考试全国统一命题考试

第一部分选择题

一、单项选择题:本大题共15小题,每小题1分,共15分。在每小题列出的备选项中 只有一项是最符合题目要求的,请将其选岀。

1-将CPU、存储器、总线等微型计算机的主要部分集成在一个芯片上,构成的电子器 件称为

  1. 微处理器 微控制器

C.微计算机 D.微电子设备

  1. 一个8位二进制数10000011B可以表示

A.有符号数-3的原码 B.十六进制真值-83H

C.有符号数-3的补码 D.有符号数131的原码

  1. 下列循环语句中,循环体的执行次数与其他选项不同的是
  2. for (i=0; i<10; i++) {} B. for (i=10; i>=l; i–) ()
  3. i=0; while (++i<=10) {} D. i=10; do {} while(i—>=1);
  4. 下列关于C程序函数调用的描述中,正确的是
  5. 实参和形参不能同名
  6. 参数的值传递是指把形参的值赋给实参
  7. 函数可以没有返回值,也可以有一个或多个返回值
  8. 函数可以没有return语句,也可以有一个或多个return语句
  9. 指令从内存中找到操作数的方式称为
A.访存方式 B,寻址方式
C.寻指方式 D.存储方式
8. ARM7TDMI在指令的三级流水结构中,不包括的步骤是
A.执行 B.译码
C.取指 D.运算
9. ARM处理器运行模式数量有  
A. 4种 B. 5种
C. 6种 D, 7种
  1. ARM处理器中,链接寄存器(LR)用于保存函数的

A.返回数据 B.返回地址

C.返回指针 D.返回向量

11.在LPC2138微控制器中,可以作为一个字的起始存储地址的是

  1. 0x2000200A B. 0x2000200B
  2. 0x2000200D

LPC2138微控制器的引脚连接模块中,三个引脚功能选择寄存器的位数都是

  1. 4
  2. 16
  3. 若使满量程电压为5V的D/A转换器,能够分辨出的最小电压达到20mV,则该D/A 转换器的位数至少应有
  4. 8 位 B. 10 位
  5. 12 位 D. 16 位

第二部分非选择题

二、填空题:本大题共14小题,每小题2分,共28分。

  1. 设有定义“int x = -1; double y = 45;”,在32位计算机上执行语句”printf (“x= ,y= “,x, y);”,可以得到输出结果:x=FFFFFFFF,   y=123.450o
  2. 若有定义wchar a-A’; long int b=l,则表达式a+b的类型为 ,执行语句

“printf (“%c”, a+b);”的输出结果是 

  1. 设有定义“inta = 5,b = 5;”,则执行语句”a-=b++/2;”后,a的值是 ,

b的值是 o 

  1. 若希望下列程序的输出结果是“1,2”,则划线①处必须添加关键词 ;若 希望输出结果是“1,1″,则划线①处可以添加关键词  ,或者空缺。

int fimcO

{ int x = 0;

return ++x;)

int main()

{printf(“%d,”, funcO);

printf(“%d”, func。);

return 0;)

  1. 下面的函数实现将字符型参数c在字符串str中最后一次出现的位置替换为字符’*’。 请补充完整:

void str_rreplace(char *str3 char c)

{char *p = str;

while ( *p != ‘\0* ) p++;

while (p != str && *p != c)

  1. 已知字符0?的ASCII码值为30H,设在32位小端模式的计算机系统中有如下程 序段:

union {int rank;

char score [2];} st, *p = &st;

st.rank = 0x30393538;

printf(”%c,%d\n”,*(p->score), sizeof(st));

则执行结果是  O

  1. 指令是从PC给定的内存地址中读入 并执行。
  2. ARM处理器运行模式中,特权模式又分为 和异常模式。
  3. 在ARM体系的存储器中,按照小端字节顺序将数据0x12345678存入地址 0x40001000屮,则地址0x40001001中存入的字节数据为十六进制数
  4. LPC2138微控制器的GPIO寄存器中,对IOSET寄存器写入1,使对应引脚输出 电平。
  5. LPC2138微控制器的引脚设置为GPIO工作方式时,指令IO0CLR = 0x00000040; 将引脚 的输岀设为低电平。
  6. 当同一时刻有多个中断源请求中断时,处理器将根据中断 来确定哪个中 断源的请求应优先得到响应。
  7. RS-232C在发送和接收数据时,规定-15〜-3V为逻辑

29 .常用的R-2RT形电阻网络D/A转换器的电阻网络中仅有  种阻值的电阻。

三、改错题:本大题共4小题,每小题2分,共8分。每小题只有一处错误或不妥,请 指出,并将其改正。

  1. 指出下述程序段中的错误并改正:

int main(void)

enum color ( red, yellow = 2, blue, green = 6, black, white = 8.8 } pic;

pic = blue + 2;

printf(“%d, %d\n”, pic, white);

return 0;

if (*p == c)   ;

  1. 指出下述无参函数print定义中的错误并改正: void print

{int MAIN = 100; printfC%d\n\ MAIN);}

  1. 以下函数计算多项式s-| + | + | + | + -,直到s大于某个特定数值t_value,指出 其中的错误并改正:

double polynome(double t__value)

{ int a = 2, b = 1;

double s = 0.0;

do (s += (double) a/b;a = a + b;

b = a _ b;) while (s > t_value);return s;} 5

指出下述程序中的错误并改正:

struct datalink(int data;

struct datalink *p_data;);

void fun (int a, int b9 struct datalink 寧st)

{ st~>data = a + b;

st*~>p_data—>data = a * b;}

int main(void)

( struct datalink si, s2;

sl.p__data = &s2.data; fiin (3, 12, &sl);

printf (H%d, %d\n n, si.data, s2.data);

  1. 写出下列程序的执行结果。

^include <stdio.h>

void interchange(char *sl, char *s2);

int main(void)

{char str[] = n2345abcH; interchange(str3 str + 4);

str[3] = ^;

printf(,‘%s\n,5 str); return 0;}

void interchange(char *sl, char *s2)

(char c;while(sl < s2) (

c = *sl;

*sl = *s2;

*s2 = c+1;

-H-sl;

一s2;}}

  1. 写岀下列程序的执行结果。

#include <stdio.h>

int main(void) { struct { int x; double y;

}e[3] = {{1,2.2},{3,4.4},{5,6.6}}, *p = e; p_>x++;

(++p)->y += 2;

(p+l)_>x *= 2;

printf(“%d, %.其 %d, %.lf\nM,e[0].x3e[0].y5 (p+l)->x, p->y); return 0;

#include <LPC2138.h>

typedef unsigned int uint32;

#define POUT (uint32)((l « 4) | (1 « 5) | (1 « 6) |(1 « 7)) uint32 m_lms_count;

/* 函数名称:IRQ_Timer00 */

void _irq IRQ_TimerO (void)

m_lms_count-H-;

m_lms_count %= 500; switch(m_l ms_count) (

case 0: IO0SET = POUT; break;

case 100: IO0CLR = (1«4); break;

case 200: IO0CLR = (1«5); break;

case 300: IO0CLR = (1 «6); break;

case 400: IO0CLR = (1«7); break; default: break;}

T0IR = 0x01;

40.题40图所示为由LPC2138微控制器、发光二极管LED1和LED2、开关S1和S2

/*函数名称:TimeOInitQ函数功能:定时器0初始化*/

//定时器0初始化

//设置定时器0分频为100分频,得150000Hz

//匹配通道MR0匹配中断并复位TC

// MR0比较值

//启动并复位T0TC

//启动定时器0

VICIntSelect-OxOO;

VICVectCntIO = 0x20 | 0x04;

VICVectAddrO = (uint32) IRQ^TimerO;

VICIntEnable = (1«4);}/* 名称:main() */

int main(void)

{PINSELO = 0x00;

IO0DIR = POUT;

Time0Init();

IOOCLR = POUT;

while(l);}

  • 函数Time0Init()中,语句”VICIntSelect = 0x00;”的作用是将所有通道设置为 —①—中断;语句”VICVectCntIO = 0x20 | 0x04;”的作用是分配定时器。的中 断到向量通道—②_;语句 “VICVectAddrO = (uint32) IRQ_Timer0;” 的作用 是将中断服务程序IRQ_Timer0的入口地址设置到寄存器一③一中;语句

“VICIntEnable = (1<<4);”的作用是使能定时器一④一的中断。

  • 程序运行后定时器0每隔_^_ms产生一次中断。
  • 程序运行后4引脚输出频率为—⑥_Hz、占空比为―⑦―的矩形波。
  • 5引脚输岀波形的占空比为—⑧P0.6引脚输出波形的占空比为—⑨_;P0.7引脚输出波形的占空比为_(©_。

试阅读下述程序,将编号①〜⑥处空缺的内容填写在答题卡上。

P0.2/SCLO/CAPO.O

RTXC1 P0.3/SDA0/MAT0. 0/EINT1

RTXC2 PC. 4/SCKO/CAPO. 1 /AD0.6 _ PO 5/MISO0/MAT0.1/AD07

R§T P0.6/MOSl0/CAP0,2/AD1.0

w*湼谶藩韻溯诵洞噂;

P0.8rrxD1/PWM4/AD11

P0.9/RXD1/PWM6/EINT3

P0.10/RTS1/CAP1.0/AD1.2

PO 11/CTS1/CAP1.1/SCL1

P0.12^)SR1/MAT1.0/AD1.3

P0 13/DTR1/MAT1.1/AD1.4

P0.14/DCO1/EINT1/SDA1

P0.15/RI1/EINT2/AD1 5

题40图

/* Main.c */ ..

#include <LPC2138.h>

typedef unsigned int uint32;

int main (void)

{ uint32 Key;

PINSELO = 0x00000000;

IO0DIR = 0x00000003;

while (I)

{Key = (IOOPIN & (0x1 « 9)) | (IOOPIN & (0x1 « 15));

if (Key ==((0x1 « 9)|(0xl « 15)))

IOOPIN = (IOOPIN & OxFFFFFFFC) I 0x1;

else if (Key = (0xl « 9))

IOOPIN = (IOOPIN & OxFFFFFFFC) I 0x0; else if (Key — (0x1 « 15))

IOOPIN = (IOOPIN & OxFFFFFFFC) | 0x2;

else if (Key==0) IOOPIN = (IOOPIN & OxFFFFFFFC) I 0x3;}}

(1)假设开关Sk S2断开,则程序运行后LED1_(B_ (熄灭/点亮);LED2_(Z)__ (熄灭/点亮)。

⑵ 如果要求两个LED灯都点亮,则开关S1应―③―(断开/闭合);开关S2应 (断开/闭合)。

(3)如果将语句”IOODIR = 0x00000003;” 修改为“IOODIR = 0x00000001;”,则 程序运行后,当开关si、S2都闭合时,LED1_®_ (熄灭/点亮);当开关 S1闭合、开关S2断开时,LED1_®_ (熄灭/点亮)。

/* Main.c */

# include <LPC2138.h> typedef unsigned char uint8;

void InitUARTOQ

七、应用题:本大题共1小题,共5分。

41.题41图所示为LPC2138微控制器的UART通信电路,使用UART0收发数据,波 特率为4800,8位数据位,1位停止位,无奇偶校验。线路控制寄存器U0LCRAJ1LCR 各位的含义见题41表所示。试完善下述程序,将编号O⑤处空缺的内容填写在答 题卡上。

// fpclk=11.059MHz U0LCR = 0x (T

U0DLL =

U0DLM=

U0LCR = 0x)

void SendByte(uint8 data)

62 XTAL1

XTAL2

PO.O/TxDO/PWMI

PO. 1/RxD0/PWM3/EtNTO

r c  ec re

19
61 21
  22 I
3

ZU

R1XC1 P0.3/SDAO/MATO..O/EINT1 26

27

R7XC2 P0.4/SCK0/CAP0.1ZAD0.6

U1 LPC2138  P0.5/MISO0/MATD.1/AD0.7

旦一RST P0.6/MOSI0/CAP0.2/AD1.0

P0.7/SSEL0/PWM2/EINT2

CTS

RXD

RTS

UOTHR = data; while((UOLSR & 0x40) 0);}

uint8 GetByteQ

功能’ 描述
1:0 数据长度选择 00: 5 个 bit
01: 6 个 bit
■ 7 个 bit
11: 8 个 bit
2 停止位选择 0:[个停止位
1: 2个停止位
3 校验使能 0:禁止奇偶校验
1:启用奇偶校验
5:4 校验选择 00:奇校验
01:偶校验
10:将校验位强制为1
11:将校验位强制为0
6 间隔控制 0:禁止间隔发送
1:启动间隔发送
7 除数锁存访问位 0:禁止访问除数锁存器
1:允许访问除数锁存器

题41图

题41表 线路控制寄存器U0LCR/U1LCR各位的含义

uint8 data; while((U0LSR &0x01) = 0); data = UORBR;

return data;}

int main()

uint8 data;

PINSELO = 0x00000005;

⑤ ;while(l)

data = GetByteQ; SendByte(data);}}

点击免费下载:2022年4月高等教育自学考试全国统一命题考试
以上就是2022年4月自考微型计算机原理与接口技术真题试卷,有需要的同学可以自行下载使用,有什么问题可以随时留言咨询。

中国自考网:本站所有历年真题和视频资料,持续更新到最新的,如发现不是最新,联系客服即可。
中国自考网:建议开通SVIP超级会员更划算,全站所有资源永久免费下载(正版自考网课除外)
1. 本站所有网课课程资料来源于用户上传和网络收集,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,助力考生上岸!
3. 如果你想分享自己的自考经验或案例,可在后台编辑,经审核后发布在“中国自考网”,有下载币奖励哦!
4. 本站提供的课程资源,可能含有水印,介意者请勿下载!
5. 如有链接无法下载、失效或广告,请联系管理员处理(在线客服)!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 星光不问赶路人,岁月不负有心人,不忘初心,方得始终!
中国自考网 » 2022年4月自考02205微型计算机原理与接口技术试题(历年真题)

中国自考网-百万考生与你同行

会员介绍 在线客服