文档库 最新最全的文档下载
当前位置:文档库 › 微机课后作业

微机课后作业

微机课后作业
微机课后作业

习题一

一、复习题

1.微型计算机控制系统的硬件由哪几部分组成?各部分的作用是什么?

2.微型计算机控制系统的软件有什么作用?请说出各部分软件的作用。

4.操作指导、DDC和SCC系统工作原理如何?它们之间有何区别和联系?

9.未来控制系统发展趋势是什么?

12.什么是物联网?为什么说“物联网给微型计算机控制技术带来新的、更大的应用空间”?

13.物联网终端由几部分组成?各部分的作用是什么?

习题二

一、复习题

1.采样有几种方法,试说明它们之间的区别。

2.采样周期越小越好吗?为什么?

5.试用CD4051设计一个32路模拟多路开关,要求画出电路图并说明其工作原理。

7.在数据采样系统中,是不是所有的输入通道都需要加采样-保持器,为什么?

8.采样频率的高低对数字控制系统有什么影响?试举工业控制实例加以说明。

12.为什么高于8位的D/A转换器与8位的微型计算机的接口必须采用双缓冲方式?这种双缓冲工作与DAC0832的双缓冲工作在接口上有什么不同?

三、练习题

28. 设12位D/A转换器DAC1210与8031接口电路连接,如图2.30所示。

(1)说明电路控制原理

(2)设数据存放在DABUFF为首地址的连续两个存储单元中,试编写一完

成D/A转换的程序。

(3)写出产生三角波、矩形波、正弦波、阶梯波的程序。(频率为100HZ,语言不限)

8031为8位机,待转换的数字量分高8 位和低4 位两步传入。由P2口产生的高8位和低四位的控制信号的地址信息。

138输出对应的地址分别为

Y2→000101xx→B1/B2为高,写高八位数据

Y3→000111xx→ B1/B2为低,写低四位数据

Y4→001001xx→数据送出转换

void DAOUT(unsigned int DABUFF)

{

*((char xdata *)0x1400)=DABUFF>>4;

*((char xdata *)0x1c00)=(DABUFF<<4)&0x00ff;

*((char xdata *)0x2400)=0;

}

#include

unsigned int code SIN_DATA[100]={0}; //EDA 课堂介绍的内容生成正弦表

//unsigned int DABUFF;

void DAOUT(unsigned int DABUFF)

{

*((char xdata *)0x1400)=DABUFF>>4;

*((char xdata *)0x1c00)=DABUFF<<4;

*((char xdata *)0x2400)=0;

}

//设100点,100Hz则每点10000us/100=100us

unsigned char TH0_LOAD=(0x10000-100)/0x100;

unsigned char TL0_LOAD=(0x10000-100)%0x100;

unsigned char WA VEMODE=0;//设定波形

unsigned char WavePoint=0;

unsigned int DA V AL=0;

unsigned int WaveStep=4095/50;

void T0_IRQ(void)interrupt 1

{

TH0=TH0_LOAD ;

TL0=TL0_LOAD ;

switch(WA VEMODE)

{

case 0:

{

DAOUT(DA V AL);

WavePoint++;

if(WavePoint<=50)DA V AL+=WaveStep;

else DA V AL-=WaveStep;

if(WavePoint>=100)WavePoint=0;;

break;

}

case 1:

{

DA V AL=SIN_DATA[WavePoint++]

if(WavePoint>=100)WavePoint=0;

DAOUT(DA V AL);

break;

}

default:break;

}

}

void main(void)

{

TMOD=0x11;

TH0=0;

TL0=0;

TR0=1;

ET0=1;

EA=1;

while(1)

{

//delay(30000) ;DAOUT(1023); delay(30000) ;DAOUT(0); }

}

33.某A/D转换电路如图2.31所示。

(1)试写出A/D转换器的地址。

(2)该电路采用什么控制方式?画出该种转换的程序框图。

(2)用8051语言编写完成上述A/D转换的程序。

PC→00011010=0x1a 00

PB→00011001=0x19 00

查询或者延时方式控制,流程略

Usinged char char AD_0809Read(void)

{

*((char pdata *)0x1a00)= 0x80;

*((char pdata *)0x1a00)= 0;

While((*((char pdata *)0x1a00))&0x08!=0x08);//delay_us(128);Return *((char pdata *)0x1900);

}

35.设被测温度变化范围为0℃~1200℃,如果要求误差不超过0.4℃,应选用分辨率为多少位的A/D转换器(设ADC的分辨率和精度一样)?

(1200-0)/(2n-1)<=0.4→n=?

习题三

一、复习题

3.试说明非编码键盘扫描原理及键值计算方法。

6.什么叫重键?计算机如何处理重键?

7.多位LED显示器显示方法有几种?它们各有什么特点?

二、 练习题

27.试用8255A 的C 口设计一个4×4=16的键阵列,其中0~9为数字键,A~F 为功能键,采用查询方式,设计一接口电路,并编写键扫描程序。 30.某显示电路如图3.64所示,试回答下列问题。

(1)说明图中数码管应选用哪一种类型的数码管? (2)该电路属于哪一种显示方法? (3)图中74LS47的作用是什么?

(4)设1Y ,2Y 的地址分别为60H 和63H ,要显示的数据分别存放在DATABUF1和DATABUF2两个内存单元中,试设计出完整接口电路并编写一个完成上述显示的子程序。

(1)共阳极数码管 (2)静态显示

(3)7段数码管译码与驱动

74LS74 74LS74 74LS74 74LS74

74LS377

74LS377

74LS244

D7~D0

74LS138

A7~A0

Y1 Y2

+5V

(4)

Y1=01100000 Y2=01100011

void Display (void ) {

*((char pdata *)0x60)= *DATABUF1; //或者*((char pdata *)0x60)= DATABUF1; *((char pdata *)0x63)= *DATABUF2; //或者*((char pdata *)0x63)= DATABUF2; }

32.采用AT89C2051单片机,同时用廉价的74LS164和74LS138作为扩展芯片,设计一个动态显示电路,如图3.65所示,要求如下。 (1)说明74LS164的作用。 (2)说明74LS138的作用。 (3)编写完成上述功能的程序。

74LS74 74LS74 74LS74 74LS74

74LS377

74LS377

74LS244

D7~D0

74LS138

Y1 Y2

+5V

A0

A1 A2 /G2A

/G2B

G1 & ≥1 ≥1

A6,A5 A7,A4 A2,A3

(1)74LS164为移位寄存器,驱动数码管的段码。

(2)74LS138为译码器,控制三极管选通一位数码管,即位码 (3)

void display (void ) {

char i ,temp=0x00; for (i=0;i<4;i++) {

SBUF=dispBuf[i];TI=0;while(TI);P1=temp;temp+=0x04; } }

void display (long lndata ) {

74LS164

74LS138

Y0

Y3

+5V

RXD

TXD

P1.2 P1.3

A

B

char i,temp=0x00;

for(i=0;i<4;i++)

{

SBUF=DisTab[lndata%10];TI=0;while(TI);P1=temp;temp+=0x04

Lndata/=10;

}

}

习题四

一、复习题

2.说明硬件报警与软件报警的实现方法,并比较其优缺点。

4.试说明固态继电器与继电器控制有什么区别?

5.说明PWM调速系统的工作原理。

14.某电机控制系统如图4.54所示。

(1)说明图中光电隔离器4N25的作用。

(2)说明图中电机控制原理。

(3)画出电机控制程序流程图。

(4)根据流程图编写出电机控制程序。

答:

(1)隔离电机侧干扰

(2)8255的PA口作为占空比设定,PC7作为启动停止开关,PC0控制电机旋转

(3)略

(4)

uchar GetDuty(void)

{

return _8255PA;

}

bit RUN(void)

{

if(_8255PC&0x80==0x80)return 1;

else return 0;

}

void MotorCtr(bit OnOff)

{

if(OnOff)_8255PC=0x01;

else _8255PC=0x00;

}

#define DELTIME 100

void main(void)

{

uchar Duty,Counter=0;

while(1)

{

if(RUN())

{

Duty=GetDuty();

if(Counter<=Duty) MotorCtr (1);

else MotorCtr (0);

Counter++;

delay_us(DELTIME);

}

else Motor(0);

}

}

15.画出四相、六相步进电机正、反通电顺序图。

16.一步进电机控制系统接口电路如图 4.55所示(设8255芯片地址为6000~6003H)

(1)完成图中8255A与8031的接口设计

(2)试编写程序,使其能实现下列功能。

①当S1按下时,步进电机正向单三拍旋转2圈。(步距角3度)

②当S2按下时,步进电机反向双三拍旋转1圈.

③当S3按下时,步进电机正向三相六拍旋转20步。

④其余情况步进电机不转。

#define uchar unsigned char

#define uint unsigned int

#define KEY XBYTE[0x6002]

#define STEPMOTOR XBYTE[0x6002]

void delay(uint t){while(t--);}

code uchar tab1[]={0x01,0x02,0x04};

code uchar tab2[]={0x03,0x06,0x05};

code uchar tab3[]={0x01,0x03,0x02,0x06,0x04,0x05}; char StepNow;

void motor_step(bit direction,unsigned char method)

{

uchar MaxStep;

uchar *pt;

switch(method)

{

case 0:pt=tab1;MaxStep =3;break;

case 1:pt=tab2;MaxStep =3;break;

case 2:pt=tab3;MaxStep =6;break;

}

if(direction)

{

STEPMOTOR =pt[StepNow];

StepNow=(StepNow+1)% MaxStep;

}

else

{

STEPMOTOR =pt[StepNow];

StepNow=(StepNow-1)% MaxStep;

if(StepNow<0) StepNow= MaxStep-1;

}

delay(1000);

}

void main(void)

{

uint steps=0;

uchar keytemp;

while(1)

{

Keytemp=KEY & 0xe0;

switch(Keytemp)

{

case 0xc0:

while(steps++<720/3)motor_step(1,0);

do{ Keytemp=KEY&0xe0}while(Keytemp==0xc0);

steps=0;

break;

case 0xa0:

while(steps++<360/3)motor_step(0,1);

do{ Keytemp=KEY&0xe0}while(Keytemp==0xa0);

steps=0;

break;

case 0x60:

while(steps++<20)motor_step(1,2);

do{ Keytemp=KEY&0xe0}while(Keytemp==0x60);

steps=0;

break;

default:break;

}/**/

}

}

习题六

15.复习题

13.串行通信传送方式有几种?它们各有什么特点?

13.异步通信与同步通信的区别是什么?它们各有什么用途?

补充:编程实现单片机与PC机串口通信程序,要求使用串口调试助手观测单片机上电时发给PC机的字符串“SystemInitialed\n”,之后PC机发给单片机字符串,单片机将原字符串返回。

void comm_init(long baud)

?{

?unsigned long reload=11059200/32/baud; /*baud=fosc/reload/32 ?PCON = 0x80; // SMOD = 1;

?SCON = 0x50; // Mode 1, 8-bit UART, enable receiption ?

?RCAP2H = 0xff;

?TH2 = 0xff;

?RCAP2L = 0x100-(uchar)reload;

?TL2 = 0x100-(uchar)reload;

?T2CON = 0x34;

?ES =1;EA=1;

?}

?void trans_one(uchar uc)

?{

?SBUF = uc;

?TI=0;

?while(!TI);

?

?}

?void trans_str(uchar *str)

?{

?while((*str)!='\0')trans_one(*(str++));

?}

?void SerialIRQ() interrupt 4 /**/

?{

?unsigned char temp;

?if(RI)

?{

?RI=0;

temp=SBUF;

SBUF=temp;TI=0;while(!TI);

?}

?}

?void main(void)

?{

?comm_init(9600);

?trans_str("System Initialed!\n"); //trans_one(30);

?while(1);

?}

习题七

8.复习题

4.常用的数字滤波方法有几种?它们各自有什么优缺点?

5.在程序判断滤波方法中,△Y如何确定?其值越大越好吗?

7.标度变换在工程上有什么意义?在什么情况下使用标度变换程序? 二、线性插值法有什么优缺点?使用中分段是否越多越好? 三、练习题

19. 某计算机控制系统,如图7.18所示。用一个音频振荡器接在输入端,其数字滤波计算公式为:

)1(1615

)(161)(-+=

k y k x k y

试编写一个计算y (k )的程序。

图7.18 计算机控制系统方框图

int yk,yk_1; void Filter(void) {

yk_1=yk; xk=AD_RESULT;

yk=xk/16+15*yk_1/16; // yk=(xk+15*yk_1)/16; }

void Filter(void) {

xk=AD_RESULT;

yk=xk/16+15*yk_1/16; // yk=(xk+15*yk_1)/16; yk_1=yk; }

ADC

输入 计算机

DAC

输出

21. 某压力测量系统,其测量范围为0~1000mmH 2O 柱,经A/D 转换后对应的数字量为00~FFH ,试编写一个标度变换子程序,使其能对该测量值进行表度变换。

y=(1000-0)*(Nx-0)/(0xff-0)+0;

22. 某梯度炉温度变化范围为0℃~1600℃,经温度变送器输出电压范围为1~5V ,再经ADC0809转换,ADC0809的输入范围为0~5V ,试计算当采样数值为9BH 时,所对应的梯度炉温度是多少?

y=(1600-0)*(Nx-51)/(255-51)+0; y=1600*(104)/204=815.69

25.现有一微型计算机炉温控制系统。它的温度检测元件为热电偶。由于此元件的热电势与温度之间的关系是非线性的,这对于微型计算机采样、转换及计算精度将会有一定的影响。因此,必须对其进行非线性补偿,以便提高控制精度。经过一系列统计和计算,得到一个近似数学公式:

??

?≤<+≤=)2514(1624)14(25V V V V T ?

??≤<+≤=)2514(1424)

14(25V V V V T 式中,V 为热电偶的输出值,单位为mV 。根据此公式可得到两条折线,它与

51

1600

255

微机原理作业

微机原理作 业 第一章 1.135.625 3.376.125 1.1A 把下列十进制数转换为二进制,十六进制和BCD 数; 1.1B 要求同上,要转换的十进制数如下; 1.67.375 2.936.5 1.2A 268.875 4.218.0625 写下列十进制数的原码,反码和补码表示(用8 位二进制); 1.+65 2.-115 1.2B 3.-65 要求同题 1.2A 数据如下; 4.-115 1.+33 2.+127 1.3A 3.-33 4.-127 用16 位二进制,写出下列十进制数的原码,反码,和补码表示; 1.+62 2.-62 3.+253 4.-253 1.4A 5.+615 6.-615 写出下列用补码表示的二进制数的真直; 1.01101110 2.01011001 1.4B 3.10001101 要求同题 1.4A 数据如下; 4.11111001 1.01110001 3.10000101 2.00011011 4.11111110 2.548.75 4.254.25

汇编语言程序设计 题 3.1A 在下列程序运行后,给相应的寄存器及存储单元填入运行的结果: 题3.2,如在自1000H 单元开始有一个 100个数的数据块。要把它传送到自 储区中去,用以下三种方法,分别编制程序; 1 ;不用数据块转送指令; 2;用单个转送的数据块转送指令; 3;用数据块成组转送指令; 题3.3A 利用变址寄存器遍一个程序,把自 1000H 单元内开始的100个数转送到自1070H 开 始的存储区中去, 题3.3B 要求用3.3A ,源地址为2050H ,目的地址为2000H ,数据块长度为50, 题3.4 编一个程序,把自 1000H 单元开始的100个数转送至1050H 开始的存储区中(注意 数据区有重叠)。 题3.5A 在自0500H 单元开始,存有100个数。要求把它传送到 1000H 开始的存储区中,但 在传送过程中要检查数的值,遇到第一个零就停止传送。 题3.5B 条件同题3.5A ,但在传送过程中检查数的值,零不传送,不是零则传送至目的区。 第三章 MOV AL ,10H MOV byte PTR [1000],0FFH MOV CX ,1000H MOV BX ,2000H MOV [BX],AL XCHG CX ,BX MOV DH ,[BX] MOV DL ,01H XCHG CX ,BX MOV [BX],DL HLT 题 3.1B 要求同题3.1A 程序如下; MOV AL , 50H MOV BP , 1000H MOV BX ,2000H MOV [BP],AL MOV DH ,20H MOV [BX],DH MOV DL ,01H MOV DL ,[BX] MOV CX ,3000H 2000H 开始的存 HLT 1000H 2000H

微机原理考试课后练习题筛选

第一章 一、选择题 7.(D)8.(B)9.(D)10.(C)11.(A) 二、填空题 l.(运算器)2.(冯·诺依曼、输出器、存储器、存储器)9.(尾数、指数) 第二章 一、选择题 1.(C)4.(B)5.(D)7.(A)8.(D)18.(B) 二、填空题 4.(TF、DF、IF) 5. (9E100H)10.(0、0、 1、1)15.(FFFFH、0000H、0000H、0000H) 三、问答题 2.完成下列补码运算,并根据结果设置标志SF、ZF、CF和OF,指出运算结果是否溢出? (1)00101101B+10011100B (2) 01011101B-10111010B (3)876AH-0F32BH (4)10000000B十 11111111B (1)00101101B +10011100B 11001001B=C9H SF=1 ZF=0 CF=0 OF=0 (2) -10111010B=01000110B 01011101B-10111010B=01011101B +01000110B 10100011B SF=1 ZF=0 CF=0 OF=1 (3)876AH-0F32BH=876AH +0CD5H 943FH SF=1 ZF=0 CF=0 OF=0 (4) 10000000B +11111111B 101111111B=7FH SF=0 ZF=0 CF=1 OF=1 习题3 一、选择题 1.D 4.B 5.A 14.D 17.C 二、填空题 7. 3400H;5000H 8. 9AH;6CH;0;1;1;1;0 17.低8位;高8位;0FFA4H 三,问答题 1、(1)源操作数是基址寻址,目的操作数是寄存器寻址(2)逻辑地址是0705H,物理地址是10705H (3)(AX)=1234H (BX)=0700H 10、(1)MOV SI,2500H MOV DI,1400H MOV CX,64H CLD REP MOVSB (2) MOV SI,2500H MOV DI,1400H MOV CX,64H CLD REPE CMPSB JNZ L1 XOR BX,BX HLT L1:DEC SI MOV BX,SI MOV AL,[SI] HLT 习题4 一、选择题 1.B 4.C 二、填空题 1..ASM;.OBJ;.EXE 6.( AX)= 1 (BX)= 2 (CX)= 20 (DX)= 40

第一次作业计算机基础知识

第一次作业计算机基础知 识 Last revision on 21 December 2020

1. 计算机问世以来经历了四代,划代的主要依据是计算机电子元件的类型。大规模集成电路主要应用于____d__。 a. 第1代 b. 第2代 c. 第3代 d. 第4代 2.在计算机的多种技术指标中,决定计算机的计算精度的是___b___。 a. 运算速度 b. 字长 c. 存储容量 d. 进位数制 3. 个人计算机(PC)是除了主机外,还包括外部设备的微型计算机。而其必备的外部设备是___b___。 a. 键盘和鼠标 b. 显示器和键盘 c. 键盘和打印机 d. 显示器和扫描仪 4. 从硬件看,对整机性能影响最大的是___b___。 a. 内存 b. CPU c. 显示器 d. 硬盘 5. WPS、Word等文字处理软件属于___c___。 a. 管理软件 b. 网络软件 c. 应用软件 d. 系统软件 6. 一般认为,世界上第一台电子数字计算机诞生于___a___。 a. 1946年 b. 1952年 c. 1957年 d. 1963年 7. 用来计算计算机存储容量的基本单位是___c___。 a. 字 b. 页 c. 字节 d. 数据块 8. 液晶显示器简称为___c___。 a. CRT b. VGA c. LCD d. TFT 9. 在计算机中,控制总线的英文术语的缩写是___b___。 a. DB b. CB c. AB d. MODEM 10. 计算机中常说的486、586指的是计算机的___c___。 a. 存贮容量 b. 运算速度 c. CPU型号 d. 显示器速度 11. 在计算机工作中,一般不能写入信息的存储器是___b___。 a. 软盘 b. ROM c. RAM d. 硬盘

微机原理与应用作业答案

1. 若二进制数为 ,则该数的十进制表示为( B : )。 2. 为二进制补码,该数的真值为( C +58 )。 3. 01000110为二进制补码, 该数的真值为( A +70 )。 4. 8位二进制数的原码表示范围为( C -127 ~ +127 )。 5. n 位二进制数的原码表示范围为( C 12~1211-++---n n )。 6. 8位二进制数的反码表值范围为( C -127~ +127 )。 7. n 位二进制数的反码表示范围为( C 12~1211-++---n n )。 8. 8位二进制数的补码表值范围为( B -128 ~ +127 )。 9. n 位二进制数的补码表示范围为( B 12~211-+---n n )。 10. 8位二进制数的无符号数表值范围为( A 0 ~ 255 )。 11. 决定计算机主要性能的是( A 中央处理器 )。 12. M I P S 用来描述计算机的运算速度,含义是( C 每秒执行百万条指令 )。 13. 完整的计算机系统应包括( D 硬件设备和软件系统)。 14. 计算机硬件主要由C P U 、内存、I /O 设备和( B 三总线 )组成。 15. 包含在8086C P U 芯片内部的是( A 算术逻辑单元)。 16. 在机器数( B 补码)中,零的表示形式是惟一的。 17. 程序计数器P C 的作用是( A 保存将要执行的下一条指令的地址)。 18. 8086当前被执行的指令存放在( D CS :IP )。 19. 运算器执行两个补码表示的整数加法时,产生溢出的正确叙述为( D 相加结果的符号位与两同号加数的符号位相反则产生溢出)。 20. 8086中,存储器物理地址形成算法是( B 段地址左移4位/16/10H+偏移地址 )。 21. 下列逻辑地址中对应不同的物理地址的是( 03E0H :0740H )。 A :0400H :0340H B :0420H :0140H D :03C0H :0740H 22. 存储字长是指( B 存储单元中二进制代码个数)。 23. 8086系统中,每个逻辑段的最多存储单元数为( C 64KB )。 24. 若某C P U 具有64G B 的寻址能力,则该C P U 的地址总线宽度为( 36 )。 25. 下列数中最小的数是( A (1011011)2 )。 26. 指令队列具有( D 暂存预取指令 )的作用。 27. 指令队列工作方式为( A 先进先出 )。 28. 堆栈存储器存取数据的方式是( C 先进后出)。 29. 8086系统中,一个栈可用的最大存储空间是( B 64KB )。 30. 8086C P U 有( C 8 )个8位的通用寄存器。 31. 8086C P U 共有( D 14)个16位寄存器。 32. 某补码表示的8位二进制整数由5个1和3个0组成,则其可表示的最小值是 ( A -113 )。 33. 16个字数据存储区的首址为70A 0H :D D F 6H ,末字单元的物理地址为( C :7E814H )。 34. 8个字节数据存储区的首址为70A 0H :D D F 6H ,末字节单元的物理地址为( D :7E7FDH )。 35. 用M B 表示存储器容量时,1M B 等于( C 220个字节)。 1. 8086与外设进行数据交换时,常会在( T 3 )后进入等待周期T w 。 2. 下列说法中属于最小工作模式特点的是( A CPU 提供全部的控制信号)。 3. 下列说法中属于最大工作模式特点的是( C 需要总线控制器8288 )。 4. 8086 C P U 中,需要( B 2 )片数据总线收发器芯片8286。 5. 8086C P U 中,需要( C 3 )片地址锁存器芯片8282。 6. 从8086存储器中读取非规则字需要( B 2 )个总线周期。 7. 从8086存储器中读取奇地址存储的字节需要( A :1 )个总线周期。 8. 下列说法中,不正确的是( C 栈底是堆栈地址较小的一端)。 9. 在8086系统中,用控制线( D M/IO )实现对存储器和I /O 接口的选择。 10. C P U 对存储器访问时,地址线和数据线的有效时间关系为( B 地址线先有效)。 11. 8086 C P U 共有( D 21 )根分时复用总线。

微机原理课后作业答案第五版

第一章 6、[+42]原=00101010B=[+42]反=[+42]补 [-42]原 [-42]反 [-42]补 [+85]原=01010101B=[+85]反=[+85]补 [-85]原 [-85]反 [-85]补 10、微型计算机基本结构框图 微处理器通过一组总线(Bus)与存储器和I/O接口相连,根据指令的控制,选中并控制它们。微处理器的工作:控制它与存储器或I/O设备间的数据交换;进行算术和逻辑运算等操作;判定和控制程序流向。 存储器用来存放数据和指令,其内容以二进制表示。每个单元可存8位(1字节)二进制信息。 输入——将原始数据和程序传送到计算机。 输出——将计算机处理好的数据以各种形式(数字、字母、文字、图形、图像和声音等)送到外部。 接口电路是主机和外设间的桥梁,提供数据缓冲驱动、信号电平转换、信息转换、地址译码、定时控制等各种功能。 总线:从CPU和各I/O接口芯片的内部各功能电路的连接,到计算机系统内部的各部件间的数据传送和通信,乃至计算机主板与适配器卡的连接,以及计算机与外部设备间的连接,都要通过总线(Bus)来实现。 13、8086有20根地址线A19~A0,最大可寻址220=1048576字节单元,即1MB;80386有32根地址线,可寻址232=4GB。8086有16根数据线,80386有32根数据线。

1、8086外部有16根数据总线,可并行传送16位数据; 具有20根地址总线,能直接寻址220=1MB的内存空间; 用低16位地址线访问I/O端口,可访问216=64K个I/O端口。 另外,8088只有8根数据总线 2、8086 CPU由两部分组成:总线接口单元(Bus Interface Unit,BIU) BIU负责CPU与内存和I/O端口间的数据交换: BIU先从指定内存单元中取出指令,送到指令队列中排队,等待执行。 执行指令时所需的操作数,也可由BIU从指定的内存单元或I/O端口中获取,再送到EU去执行。 执行完指令后,可通过BIU将数据传送到内存或I/O端口中。 指令执行单元(Execution Unit,EU) EU负责执行指令: 它先从BIU的指令队列中取出指令,送到EU控制器,经译码分析后执行指令。EU的算术逻辑单元(Arithmetic Logic Unit,ALU)完成各种运算。 6、见书P28-29。 7.(1) 1200:3500H=1200H×16+3500H=15500H (2) FF00:0458H=FF00H×16+0458H=FF458H (3) 3A60:0100H=3A80H×16+0100H=3A700H 8、(1)段起始地址 1200H×16=12000H,结束地址 1200H×16+FFFFH=21FFFH (2)段起始地址 3F05H×16=3F050H,结束地址 3F05H×16+FFFFH=4F04FH (3)段起始地址 0FFEH×16=0FFE0H,结束地址 0FFEH×16+FFFFH=1FFD0H 9、3456H×16+0210H=34770H 11、堆栈地址范围:2000:0000H~2000H(0300H-1),即20000H~202FFH。执行 两条PUSH指令后,SS:SP=2000:02FCH,再执行1条PUSH指令后,SS: SP=2000:02FAH。 12、(2000H)=3AH, (2001H)=28H, (2002H)=56H, (2003H)=4FH 从2000H单元取出一个字数据需要1次操作,数据是 283AH; 从2001H单元取出一个字数据需要2次操作,数据是 5628H; 17、CPU读写一次存储器或I/O端口的时间叫总线周期。1个总线周期需要4个系统时钟周期(T1~T4)。8086-2的时钟频率为8MHz,则一个T周期为125ns,一个总线周期为500ns,则CPU每秒最多可以执行200万条指令。

微机原理课后练习题-答案

1、 2、B 3、十,非压缩的BCD码 4、 5、微型计算机、微型计算机系统 6、,, 二、 B D B 三、 1、微型计算机系统的基本组成。 答案:以微型计算机为主体,配上相应的系统软件、应用软件和外部设备之后,组成微型计算机系统。 2、简述冯.诺依曼型计算机基本组成。 答案:冯.诺依曼型计算机是由运算器,控制器,存储器,输入设备和输出设备组成的。其中,运算器是对信息进行加工和运算的部件;控制器是整个计算机的控制中心,所以数值计算和信息的输入,输出都有是在控制器的统一指挥下进行的;存储器是用来存放数据和程序的部件,它由许多存储单元组成,每一个存储单元可以存放一个字节;输入设备是把人们编写好的程序和数据送入到计算机内部;输出设备是把运算结果告知用户。 3、什么是微型计算机 答案:微型计算机由CPU、存储器、输入/输出接口电路和系统总线构成。 4、什么是溢出 答案:在两个有符号数进行家减运算时,如果运算结果超出了该符号数可表示的范围,就会发生溢出,使计算出错。

1、4、100ns 2、Ready ,Tw(等待) 3、ALE 4、INTR 5、85010H 6、存储器或I/O接口未准备好 7、非屏蔽中断 8、指令周期 9、4 二、 1、在内部结构上,微处理器主要有那些功能部件组成 答案:1) 算术逻辑部件2) 累加器和通用寄存器组 3) 程序计数器4) 时序和控制部件 2、微处理器一般应具有那些基本功能 答案:1.可以进行算术和逻辑运算2.可保存少量数据 3.能对指令进行译码并完成规定的操作4.能和存储器、外部设备交换数据 5.提供整个系统所需的定时和控制6.可以响应其他部件发来的中断请求 3、什么是总线周期 答案:CPU通过外部总线对存储器或I/O端口进行一次读/写操作的过程;一个基本的总线周期包含4个T状态,分别称为T1、T2、T3、T4。 三、×、×、×、×、×、√、√

微机原理课后作业答案(第五版)

6、[+42]原=00101010B=[+42]反=[+42]补 [-42]原=10101010B [-42]反=11010101B [-42]补=11010110B [+85]原=01010101B=[+85]反=[+85]补 [-85]原=11010101B [-85]反=10101010B [-85]补=10101011B 10、微型计算机基本结构框图 微处理器通过一组总线(Bus)与存储器和I/O接口相连,根据指令的控制,选中并控制它们。微处理器的工作:控制它与存储器或I/O设备间的数据交换;进行算术和逻辑运算等操作;判定和控制程序流向。 存储器用来存放数据和指令,其内容以二进制表示。每个单元可存8位(1字节)二进制信息。 输入——将原始数据和程序传送到计算机。 输出——将计算机处理好的数据以各种形式(数字、字母、文字、图形、图像和声音等)送到外部。 接口电路是主机和外设间的桥梁,提供数据缓冲驱动、信号电平转换、信息转换、地址译码、定时控制等各种功能。 总线:从CPU和各I/O接口芯片的内部各功能电路的连接,到计算机系统内部的各部件间的数据传送和通信,乃至计算机主板与适配器卡的连接,以及计算机与外部设备间的连接,都要通过总线(Bus)来实现。 13、8086有20根地址线A19~A0,最大可寻址220=1048576字节单元,即1MB;80386有32根地址线,可寻址232=4GB。8086有16根数据线,80386有32根数据线。

1、8086外部有16根数据总线,可并行传送16位数据; 具有20根地址总线,能直接寻址220=1MB的内存空间; 用低16位地址线访问I/O端口,可访问216=64K个I/O端口。 另外,8088只有8根数据总线 2、8086 CPU由两部分组成:总线接口单元(Bus Interface Unit,BIU) BIU负责CPU与内存和I/O端口间的数据交换: BIU先从指定内存单元中取出指令,送到指令队列中排队,等待执行。 执行指令时所需的操作数,也可由BIU从指定的内存单元或I/O端口中获取,再送到EU去执行。 执行完指令后,可通过BIU将数据传送到内存或I/O端口中。 指令执行单元(Execution Unit,EU) EU负责执行指令: 它先从BIU的指令队列中取出指令,送到EU控制器,经译码分析后执行指令。EU的算术逻辑单元(Arithmetic Logic Unit,ALU)完成各种运算。 6、见书P28-29。 7.(1) 1200:3500H=1200H×16+3500H=15500H (2) FF00:0458H=FF00H×16+0458H=FF458H (3) 3A60:0100H=3A80H×16+0100H=3A700H 8、(1)段起始地址 1200H×16=12000H,结束地址 1200H×16+FFFFH=21FFFH (2)段起始地址 3F05H×16=3F050H,结束地址 3F05H×16+FFFFH=4F04FH (3)段起始地址 0FFEH×16=0FFE0H,结束地址 0FFEH×16+FFFFH=1FFD0H 9、3456H×16+0210H=34770H 11、堆栈地址范围:2000:0000H~2000H(0300H-1),即20000H~202FFH。执行两条PUSH指令后,SS:SP=2000:02FCH,再执行1条PUSH指令后,SS:SP=2000:02FAH。 12、(2000H)=3AH, (2001H)=28H, (2002H)=56H, (2003H)=4FH 从2000H单元取出一个字数据需要1次操作,数据是 283AH; 从2001H单元取出一个字数据需要2次操作,数据是 5628H; 17、CPU读写一次存储器或I/O端口的时间叫总线周期。1个总线周期需要4个系统时钟周期(T1~T4)。8086-2的时钟频率为8MHz,则一个T周期为125ns,一个总线周期为500ns,则CPU每秒最多可以执行200万条指令。

微机原理作业

主要是以课本为主辅以补充作业,现发给大家,课本作业摘自王忠民教材(第三版) 第三章作业 课本P88 2,3,7 补充作业: 3-1若AX=AF7CH,BX=BEE7H,CPU分别执行加法指令和减法指令后各状态标志位的值是什么? 3-2在8086系统中,什么是逻辑地址?什么是物理地址?逻辑地址和物理地址之间有什么关系?若已知逻辑地址为BA00H:A800H,求其物理地址? 3-3设段地址为4ABFH,物理地址为50000H,求有效地址是什么? 3-4设CS=3100H,DS=3140H,两个段的空间均为64K个单元,问两个段重叠区为多少个单元?两个段的段空间之和为多少? 3-5给定一个堆栈区,其地址为1250H:0000H --1250H:0100H,SP=0052H,问:1)栈顶地址是多少? 2)栈底地址是多少? 3)在堆栈寄存器SS中的段地址是什么? 4)若存入数据2456H,数据在内存中如何放置(图示)?此时SP的内容是多少?3-6现有8个字节的数据为:34H、45H、56H、67H、78H、89H、9AH、ABH,假定它们在存储器中的物理地址为400A5H~400ACH。若当前(DS)=4002H,求这8个数据的偏移地址。如要以最少时间读出这些数据,需要访问存储器多少次?每次读出的数据是什么?并用图示之。 3-7 什么叫总线周期?8086/8088系统中的总线周期由几个时钟周期组成?如果CPU的主时钟频率为25MHz,一个时钟周期是多少?一个基本总线周期是多少时间? 3-8如果12MHz的振荡信号接至8284时钟输入端,其输出频率接8086/8088的CLK端。求在插入一个等待周期的情况下从内存读一个字节数据所需的最小时间。

微机原理大作业

微机大作业 班级: 学号: 姓名:

第一题: (上机题)编写程序实现下列5项功能,通过从键盘输入1~5进行菜单式选择:(1)按数字键“1”,完成将字符串中的小写字母变换成大写字母。用户输入由英文大小写字母或数字0~9组成的字符串(以回车结束),变换后按下列格式在屏幕上显示:<原字符串>例如:abcdgyt0092 <新字符串> ABCDGYT0092 按任一键重做;按Esc键返回主菜单。 (2)按数字键“2”,完成在字符串中找最大值。用户输入由英文大小写字母或数字0~9组成的字符串(以回车结束),找出最大值后按下列格式在屏幕上显示:<原字符串> The maximum is <最大值>. 按任一键重做;按Esc键返回主菜单。 (3)按数字键“3”,完成输入数据组的排序。用户输入一组十进制数值(小于255),然后变换成十六进制数,并按递增方式进行排序,按下列格式在屏幕上显示:<原数值串> <新数值串> 按任一键重做;按Esc键返回主菜单。 (4)按数字键“4”,完成时间的显示。首先提示用户对时,即改变系统的定时器HH:MM:SS(以冒号间隔,回车结束),然后在屏幕的右上角实时显示出时 间:HH:MM:SS。 按任一键重新对时;按Esc键返回主菜单。 (5)按数字键“5”,结束程序的运行,返回操作系统。 运行结果: 首先进入的首页:

输入1 输入字符串: 安任意键后: Esc 键返回菜单:

输入2: 输入字符串: 安任意键后 Ese键返回菜单

输入3 输入若干数: 按任意键: 按Esc返回主菜单

输入4 安1修改时间 输入修改时间: 按任意键重做 按Esc返回主菜单

(完整版)微机原理课后习题参考答案

第一章 2、完成下列数制之间的转换。 (1)01011100B=92D (3)135D=10000111B (5)10110010B=262Q=B2H 3、组合型BCD码和非组合型BCD码有什么区别?写出十进制数254的组合型BCD数和非组合型数。 答:组合型BCD码用高四位和低四位分别对应十进制数的个位和十位,其表示范围是0~99;非组合型BCD码用一个字节的低四位表示十进制数,高四位则任意取值,表示范围为0~9。 组合型:254=(001001010100)BCD 非组合型:254=(00000010 00000101 00000100)BCD 7、计算机为什么采用补码形式存储数据?当计算机的字长n=16,补码的数据表示范围是多少? 答:在补码运算过程中,符号位参加运算,简化了加减法规则,且能使减法运算转化为加法运算,可以简化机器的运算器电路。+32767~ -32768。 9、设计算机字长n=8,求下列各式的[X+Y]补和[X-Y]补,并验证计算结果是否正确。 (1)X=18,Y=89 [X+Y]补=00010010+01011001=01101011B=107D 正确 [X-Y]补=10111001B=00010010+10100111=(-71D)补正确 (2)X=-23,Y=-11 [X+Y]补=11101001+11110101=11011110B=(-34D)补正确[X-Y]补=11101001+00001011=11110100B=(-12D)补正确 (3)X=18,Y=-15 [X+Y]补=00010010+11110001=00000011B=(3D)补正确 [X-Y]补=00010010+00001111=00100001B=(33D)补正确 (4)X=-18,Y=120 [X+Y]补=11101110+01111000=01100110B=(102D)补正确[X-Y]补=11101110+10001000=01110110B=(123D)补由于X-Y=-138 超出了机器数范围,因此出错了。 13、微型计算机的主要性能指标有哪些? 答:CPU字长、存储器容量、运算速度、CPU内核和IO工作电压、制造工艺、扩展能力、软件配置。 第二章 2、8086标志寄存器包含哪些标志位?试说明各标志位的作用。 答:进位标志:CF;奇偶校验:PF;辅助进位:AF;零标志:ZF;符号标志:SF;溢出标志:OF。 5、逻辑地址与物理地址有什么区别?如何将逻辑地址转换为物理地址? 答:物理地址是访问存储器的实际地址,一个存储单元对应唯一的一个物理地址。逻辑地址是对应逻辑段内的一种地址表示形式,它由段基址和段内偏移地址两部分组成,通常表示为段基址:偏移地址。 物理地址=段基址*10H+偏移地址。 6、写出下列逻辑地址的段基址、偏移地址和物理地址。 (1)2314H:0035H (2)1FD0H:000AH 答:(1)段基址:2314H;偏移地址:0035H;物理地址:23175H。 (2)段基址:1FD0H;偏移地址:000AH;物理地址:1FD0AH。 8、设(CS)=2025H,(IP)=0100H,则当前将要执行指令的物理地址是多少? 答:物理地址=(CS)*10H+(IP)=20350H 9、设一个16字的数据区,它的起始地址为70A0H:DDF6H(段基址:偏移地址),求这个数据区的首字单元和末字单元的物理地址。

微机系统与维护课程作业与答案(四)

中央广播电视大学计算机网络技术专业(专科)《微机系统与维护》课程作业(四) 第7章微机常见故障分析和处理 一、选择题(请选择一个或多个选项) 1.微机加电开机后,系统提示找不到引导盘,可能是()。 A.主板CMOS中硬盘有关参数的设置错误 B.显示器连接不良 C.硬盘自身故障 D.硬盘连接不良 2.如果一开机显示器就黑屏,故障原因可能是()。 A.显卡没插好B.显示驱动程序错 C.显示器坏或没接好D.内存条坏或没插好 3.微机运行中突然重新启动,可能出现的问题是()。 A.CPU B.主板C.软件D.显示器 4.引起内存故障的原因很多,如可能发生()。 A.内存条温度过高,暴裂烧毁 B.内存条安插不到位,接口接触不良 C.使用环境过度潮湿,内存条金属引脚锈蚀 D.静电损坏内存条 5.下面有关硬盘故障的论述,正确的是()。 A.硬盘故障不可能影响微机大型应用软件的使用 B.硬盘故障会使微机无法正常启动 C.硬盘故障会使微机找不到引导盘 D.硬盘故障会使微机的数据或文件丢失 6.微机正常使用过程中,出现死机现象,不可能的原因是()。 A.声卡损坏B.存储器没有安装或检测不到硬件 C.CPU温度过高,散热器工作不良D.检测不到显示器或显卡损坏 7.微机运行一切正常,但是某一应用软件(例如:3D MAX)打不开,或不能使用,引发 该故障的原因可能的是()。 A.软件被破坏B.感染病毒 C.操作系统有故障D.系统资源严重不足 8.微机组装完成,加电开机后发现系统时间不对,经调试关机后重启还是不对,最可能 的原因是()。 A.系统不正常B.内存故障 C.CPU工作不良D.主板CMOS的电池失效 9.引起硬盘故障的原因有很多,可能发生故障的原因有()。

微机原理作业(一)

一、简答题: 1、简述8086CPU的READY信号的作用。) 2、简述指令RET和指令IRET的主要区别及各自的应用场合? 3、在8086工作于小模式下时,其如何实现对地址锁存器的控制? 4、简述8086复位信号RESET的作用? 5、在进行总线操作时,若一个存储器的读写时间较长,而8086的速度较快,8086利用哪个信号实现与之同步?请具体说明实现同步的方法。 6、在8086的最大模式下,为什么要使用总线控制器8288? 7.简单说明提高CPU运行速度的主要方法? 8.在8086系统中,形成数据总线时为什么要用到总线收发器? 9. 在8086系统中存储器采用分段方法有什么好处? 10、在8086系统中,形成地址总线时为什么要用到地址锁存器? 二、简单计算与分析 M/输出的信号是什1.8086CPU在最小模式状态下,执行指令MOV AX,[2000H]时,引脚IO 么电平? DT/=0时,则CPU执行的是读操作还是写操作? 2、8086CPU在最小模式下,当引脚R 3、若DS=6000H,请指出数据段在内存中的起始物理地址? 4、若CS=2000H,IP=1000H,则CPU要取的指令的物理地址为? 5、若BL=0FFH,则执行指令INC BL后,BL=? 6、若AL=20H,则执行指令SHL AL,1后,AL=? 7、若堆栈段在内存中的起始物理地址为80000H,则寄存器SS的值为? 8、在执行MOV AX,[2000H]指令时,8086的地址信号BHE=? 9、若SP=1000H,则执行指令PUFH AX后,SP=? 10、若AL=0,则执行指令DEC AL后,AL=? 11、若AL=10H,则执行指令SHR AL,1后,AL=? 12、分别说明下列指令的源操作数和目的操作数的寻址方式? (1)MOV [3412],AX; 2)MOV BL,‘A’ 13、要完成下述运算或控制,需要用到标志寄存器的哪些标志位?其值是什么? 1)两个无符号数相减后比较大小 2)判定运算结果中“1”的个数是否为偶数个 3)比较两个数是否相等 4)运算结果是否溢出 5)比较两个无符号数的大小 6)运算结果为正或负 14、在8086系统中,执行指令MOV AL,[BP]时访问哪个段? 15、将8086设置为最大工作模式的方法为? 16、若AL=15H,则执行指令OR AL,0FH后,AL=? 17、指令INTO在程序中能够得到执行的条件是什么? 三、、程序段分析题 1、求以下程序段运行后所指定寄存器的值

微机原理作业答案

创作编号:BG7531400019813488897SX 创作者:别如克* 微机原理作业 1.8086C P U由哪两部分组成?它们的主要功能是什么? 答:8086CPU由总线接口单元(BIU)和指令执行单元(EU)组成。总线接口单元(BIU)的功能是:地址形成、取指令、指令排队、读/写操作数和总线控制。指令执行单元(EU)的功能是指令译码和指令执行。 2.微型计算机系统由微处理器、存储器和I/O接口 等组成。 3.8086CPU中的指令队列可存储6个字节的指令代码,当指令 队列至少空出 2 个字节时,BIU单元便自动将指令取到指令 队列中; 4.8086系统中,1MB的存储空间分成两个存储体:偶地址存 储体和 奇地址存储体,各为512 字节。 5.8086系统中存储器采用什么结构?用什么信号来选中存储体?答:8086存储器采用分体式结构:偶地址存储体和奇地址存储体,各为512K。用AO和BHE来选择存储体。当AO=0时,访问偶地址存储体;当BHE=0时,访问奇地址存储体;当AO=0,BHE=0时,访问两个存储体。 6.在8086CPU中,指令指针寄存器是 C 。 (A) BP (B) SP (C) IP (D) DI 7.8086CPU中的SP寄存器的位数是 B 。 (A) 8位(B) 16位(C) 20位(D) 24位

8.8086CPU中指令指针寄存器(IP)中存放的是 B 。 (A)指令(B)指令偏移地址(C)操作数(D)操作数偏移地址 9.若当前SS=3500H,SP=0800H,说明堆栈段在存储器中的物理地址 (最大),若此时入栈10个字节,SP内容是什么?若再出栈6个字 节,SP为什么值?答:堆栈段的物理地址范围:35000H~357FFH 当前顶的物理地址为:35000H+0800H=35800H 入栈10个字节以后:SP=0800H-000AH=07F6H 出栈6个字节以后:SP=07F6H+0006H=07FCH 10.下列关于8086系统堆栈的论述中,正确的是 A 。 (A) 堆栈的工作方式是“先进后出”,入栈时SP减小 (B) 堆栈的工作方式是“先进后出”,入栈时SP增大 (C) 堆栈的工作方式是“先进先出”,入栈时SP减小 (D)堆栈的工作方式是“先进先出”,入栈时SP增大 11.8086CPU对内存读/写操作,需两个总线周期的读/写操作是 D 。 (A) 从偶地址读/写一个字节(B) 从奇地址读/写一个字节 (C) 从偶地址读/写一个字(D) 从奇地址读/写一个字 12.总线周期是指 C 。 (A) 执行一条指令所需要的时间; (B) BIU完成一次读和一次写I/O端口操作所需时间之和; (C) BIU完成一次访问存储器或I/O端口操作所需要的时间; (D) BIU完成一次读和一次写存储器操作所需时间之和。 13.8086CPU通过RESET引脚上的触发信号来引起系统复位和启动,复位 时代码段寄存器CS= 0FFFFH ,指令指针IP= 0000H 。 重新启动后,从物理地址为 FFFF0H 的地方开始执行指令。 14. 8086CPU数据总线信号的状态是 C 。 (A)单向双态(B)单向三态(C)双向三态(D)双向双态

微机原理作业

微机原理作业 第一章:绪论 一:选择题 1:[X1]原=11010011B,[X2]反= 11010011B,[X2]补= 11010011B,那么它们的关系是() A:X3>X1>X2 B:X2>X3>X1 C:X3>X2>X1 D:X2>X1>X3 2:[X1]原=10111101B,[X2]反= 10111101B,[X2]补= 10111101B,那么下列成立的是() A:X1最小B:X2最小C:X3最小D:X1=X2=X3 3:在计算机中表示地址时使用() A:无符号数B:原码C:反码D:补码 4:若某机器数为10000000B,它代表-127D,则它是() A:发码或原码B:原码C:反码D:补码 5:在8位二进制数中,无符号数的范围是(),补码表示数的真值范围是(),原码表示数的真值范围是(),反码表示数的真值范围是()。 A:0~255 B:0~256 C:-127~+127 D:-128~+127 6:下列说法错误的是() A:8位二进制无符号数表示的最大数是255 B:8位二进制带符号数表示的最大数是127 B:计算机中无符号数最常用于表示地址D:计算机中通常用定点数的工作方式 7:浮点数的表示范围取决于() A:阶码的位数B:尾数的位数 C:阶码采用的编码D:尾数采用的编码 8;原码乘除法运算要求() A:操作数都必须是正数B:操作数必须具有相同的符号位 C:对操作数没有符号限制D:以上都不对 二:填空题 1:在带有符号的原码、反码和补码中,零的表示唯一的是。 2:设某机字长为8位(含一位符号位),若[X]补=11001001B,则X所表示的十进制数的真值为,[1/4X]补= 。 3:计算机中数值数据常用的数据表示格式有和。 4:在字长的原码、反码和补码中,表示数范围宽,这是因为。 三:简答题 1:假设7×7=31是正确的,那么4×8=?,并说明理由。 2:请用最小的二进制位表示下列符号数。 (1)[X]补=-24 (2)[+Y]补=67 3:已知X和Y,试分别计算[X+Y]补和[X-Y]补 (1)X=+1001110B (2)Y=-0110011B 4:完成下列格式补码数的运算,指出运算结果是否有效。 (1)00101101B+10011100B (2)01011101B-10111010B 四:问答题 1:计算机怎样判断存储的文字信息是ASCⅡ码还是汉字的编码? 2:计算机为什么要采用二进制? 3:简述PC机的性能指标,怎样选购计算机? 4:比较原码、反码和补码表示数的优缺点?

微机原理课后习题解答

微机原理习题 第一章绪论 习题与答案 1、把下列二进制数转换成十进制数、十六进制数及BCD码形式。 (1) 10110010B= (2) 01011101、101B = 解: (1) 10110010B = 178D =B2H=(00010111 1000)BCD (2) 01011101、101B =93、625D=5D.AH =(1001 0011、0110 0010 0101)BCD 2. 把下列十进制数转换成二进制数。 (1) 100D= (2) 1000D= (3) 67、21D= 解: (1) 100D = 01100100B (2) 1000D=1111101000B (3) 67、21D=1000011、0011B 3. 把下列十六进制数转换成十进制数、二进制数。 (1) 2B5H = (2) 4CD、A5H= 解: (1) 2B5H = 693D = 00101011 0101B (2) 4CD、A5H=1229.6445D=0100 11001101.10100101B 4、计算下列各式。 (1) A7H+B8H = (2) E4H-A6H = 解: (1) A7H+B8H = 15FH (2) E4H-A6H =3EH 5、写出下列十进制数的原码、反码与补码。 (1)+89 (2)-37

解: (1) [+89 ] 原码、反码与补码为: 01011001B (2) [-37] 原码= 10100101 B [-37] 反码= 11011010 B [-37] 补码=11011011 B 6.求下列用二进制补码表示的十进制数 (1)(01001101)补= (2)(10110101)补= 解: (1)(01001101)补= 77D (2)(10110101)补=-75D 7.请用8位二进制数写出下列字符带奇校验的ASCII码。 (1)C: 1000011(2)O: 1001111 (3)M: 1001101 (4)P: 1010000 解: (1)C:0 1000011 (2)O: 01001111 (3)M:11001101 (4)P: 1 1010000 8、请用8位二进制数写出下列字符带偶校验的ASCII码。 (1)+:0101011 (2)=: 0111101 (3)#:0100011(4)>: 0111110 解: (1)+:00101011 (2)=: 10111101 (3)#:10100011 (4)>: 1 0111110 9、叙述CPU 中PC的作用。 解:PC就是CPU中的程序计数器,其作用就是提供要执行指令的地址。

微机原理作业教材

《微型计算机原理及应用》作业 作业组别:第30组 班级:12级轧钢二班 姓名:贾闯 学号:120101020023 指导教师:李艳文 完成时间:2015年 05 月

30.1 一、题目及题目分析描述及要求 题目:内存中SOURCE处存放着10个字节型数据,请记录每个字节数据中二进制位1的个数,并按照数据字节在前,1的个数在后的顺序将处理结果存放到RESULT处。分析:逐一取出内存中的10个数据,对每个字节型数据进行左移或右移八次,由带进位加法指令adc对一的个数进行求和,最后把所求和放入变量RESULT中。 预期结果:SOURCE = FEH,90H,FFH,DDH,42H,30H,81H,F3H,18H,25H RESULT = FEH,07H,90H,02H,FFH,08H,DDH,06H,42H,02H,30H,02H,81H,02H,F3H, 06H,18H,02H,25H,03H 二、寄存器及主存等的应用说明 本题原始数据存放在内存SOURCE中,执行结果存放在内存RESULT中。由si和di分别取得它们的偏移地址,dl存放由SOURCE所取的字节型数据,al用来存放每个字节型数据中二进制位1的个数。 三、程序框图

四、详细程序 .MODEL SMALL .STACK .DATA SOURCE DB 0FEH,90H,0FFH,0DDH,42H,30H,81H,0F3H,18H,25H COUNT EQU $-SOURCE ;取得source中字节个数RESULT DB 2*COUNT DUP (?) .CODE .STARTUP mov di,offset source ;取得source处的偏移地址 mov si,offset result ;取得result处的偏移地址 mov ch,0 mov cl,count ;循环次数 again: mov dl,[di] ;逐一取出source中的数据 call htoasc ;调用子程序 inc di ;地址加1 loop again .exit htoasc proc ;子程序 mov al,0 mov [si],dl ;存放dl到result next: shr dl,1 ;右移 adc al,0 ;带进位加法,确定1的个数 cmp dl,0 ;dl为零停止循环 jnz next mov [si+1],al ;存放1的个数到result inc si ;地址加2 inc si ret ;返回主程序 htoasc endp end

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