计算机原理作业习题及答案学生修订稿.docx

上传人:b****0 文档编号:12866043 上传时间:2023-04-22 格式:DOCX 页数:46 大小:37.64KB
下载 相关 举报
计算机原理作业习题及答案学生修订稿.docx_第1页
第1页 / 共46页
计算机原理作业习题及答案学生修订稿.docx_第2页
第2页 / 共46页
计算机原理作业习题及答案学生修订稿.docx_第3页
第3页 / 共46页
计算机原理作业习题及答案学生修订稿.docx_第4页
第4页 / 共46页
计算机原理作业习题及答案学生修订稿.docx_第5页
第5页 / 共46页
点击查看更多>>
下载资源
资源描述

计算机原理作业习题及答案学生修订稿.docx

《计算机原理作业习题及答案学生修订稿.docx》由会员分享,可在线阅读,更多相关《计算机原理作业习题及答案学生修订稿.docx(46页珍藏版)》请在冰豆网上搜索。

计算机原理作业习题及答案学生修订稿.docx

计算机原理作业习题及答案学生修订稿

文档编制序号:

[KKIDT-LLE0828-LLETD298-POI08]

 

计算机原理作业习题及答案学生

第1章微型计算机基础知识

一、选择题

3.若用MB作为PC机主存容量的计量单位,1MB等于()字节。

A、210个字节B、220个字节C、230个字节D、240个字节

4.运算器在执行两个用补码表示的整数加法时,判断其是否溢出的规则为()。

A、两个整数相加,若最高位(符号位)有进位,则一定发生溢出

B、两个整数相加,若结果的符号位为0,则一定发生溢出

C、两个整数相加,若结果的符号位为1,则一定发生溢出

D、两个同号的整数相加,若结果的符号位与加数的符号位相反,则一定发生溢出

5.运算器的主要功能是()。

A、算术运算B、逻辑运算C、算术运算与逻辑运算D、函数运算

6.运算器由很多部件组成,其核心部分是()。

A、数据总线B、算术逻辑单元C、累加器D、多路开关

7.在一般的微处理器中,()包含在CPU中。

A、内存B、输入/输出单元C、磁盘驱动器D、算术逻辑单元

9.若某数据段位于存储区38000H~47FFFH,则该数据段的段基址为()。

A、38000HB、47FFFHC、3000HD、3800H

10.程序设计中所使用的地址是()。

A、逻辑地址B、有效地址C、物理地址D、段基址

11.80X86执行程序时,对存储器进行访问时,物理地址可由()组合产生。

A、SS和IPB、CS和IPC、DS和IPD、CS和BP

12.某处理器与内存进行数据交换的外部数据总线为32位,它属于()。

A、8位处理器B、16位处理器C、32位处理器D、64位处理器

13.在堆栈操作中,隐含使用的通用寄存器是()。

A、AXB、BXC、SID、SP

14.主要决定微机性能的是()

A、CPUB、耗电量C、质量D、价格

15.十进制负数–38的八位二进制补码是()

16.若某台微型计算机的型号是奔四800,则其中800的含义是()

A、CPU中有800个寄存器B、CPU中有800个运算器

C、该微机的内存为800MBD、时钟频率为800MHZ

17.在计算机内部,一切信息的存取,处理和传送都是以()形式进行。

A、EBCDIC码B、ASCII码C、十六进制编码D、二进制编码

18.16位PC机中整数的有效范围是()

A、-32768―32767B、-32767―32767

C、0―65535D、-32768―32767或0―65535

–1

A、原码B、反码C、补码D、BCD码

20.用8位的二进制数的补码形式表示一个带符号数,它能表示的整数范围是()

A、-127—+127B、-128—+128C、-127—+128D、-128—+127

21.计算机中运算器和控制器合称为()

A、CPUB、ALUC、主机D、ENIAC

22.32位的个人计算机,一个字节(Byte)由()位(bit)组成。

A、4B、8C、16D、32

24.从功能上,8086的CPU由()两部分组成。

A、SP、ALUB、控制器、FLAGSC、EU、BIUD、EU、ALU

25.标志寄存器FLAGS中存放两类标志,即()。

A、符号标志、溢出标志B、控制标志、状态标志

C、方向标志、进位标志D、零标志、奇偶标志

26.若AL=3BH,AH=7DH,则AL和AH中的内容相加后,标志CF、SF和OF的状态分别是()。

A、0、1、1B、1、1、1C、0、0、0D、1、1、0

27.若AL=3BH,AH=7DH,则AL和AH中的内容相减后,标志CF、AF和PF的状态分别是()。

A、0、0、1B、1、1、1C、0、1、0D、1、0、0

28.下列有关指令指针寄存器的说法中,哪一个是正确的()。

A、IP存放当前正在执行的指令在代码段中的偏移地址

B、IP存放下一条将要执行的指令在代码段中的偏移地址

C、IP存放当前正在执行的指令在存储器中的物理地址

D、IP存放当前正在执行的指令在存储器中的段地址

29.最小模式时,当M/-----IO为低电平时,表示CPU正在对()进行访问。

A、存储器B、I/O端口C、外部存储器D、EPROM

30.下面有关MN/----------MX的叙述正确的是()

A、是工作模式选择信号,由CPU产生,为高电平时CPU工作在最小模式,为低电平时,CPU工作在最大模式

B、是工作模式选择信号,由CPU产生,为低电平时CPU工作在最小模式,为高电平时,CPU工作在最大模式

C、是工作模式选择信号,由外部输入,为低电平时CPU工作在最小模式,为高电平时,CPU工作在最大模式

D、是工作模式选择信号,由外部输入,为高电平时CPU工作在最小模式,为低电平时,CPU工作在最大模式

31.某CPU的主频为250MHZ,则它的时钟周期为()

A、250nsB、50nsC、40nsD、4ns

32.如果访问存储器时使用BP寻址,则默认的段寄存器是()

A、CSB、ESC、DSD、SS

33.某单元在数据段中,已知DS=1000H,偏移地址为1200H,则它的物理地址为()

A、10000HB、11200HC、12100HD、13000H

34.某系统中,已知SS=2360H,SP=0800H,若将20H个字节的数据入栈,则SP的内容为()

A、0780HB、0820HC、23E20HD、07E0H

35.某系统中,已知建立堆栈时SS=2360H,SP=0800H,经过一段时间后,SP的内容变为0700H,则堆栈中有多少个字的数据()

A、80HB、50HC、100D、100H

36.设某一个单元的物理地址是54321H,则正确的逻辑地址表示为()

A、4321H:

50000HB、54320H:

1HC、5430H:

0021HD、5432H:

00001H

37.如果一个程序在执行前CS=1000H,IP=2000H,该程序的起始地址是()

A、3000HB、12000HC、21000HD、1000H

38.如果一个堆栈从地址1250H:

0100H开始,SP=0050,则SS的段地址是()

A、12600HB、1260HC、1265HD、125BH

39.若已知[X]补补=01001010B,则[X–Y]补=()

A、、、、溢出

二、判断题

3.若一个数据块的起始地址为20A0H:

0F6H,则该数据块起始地址的实际地址是21B60H。

4.SP的内容可以不指向堆栈的栈顶。

5.寄存器寻址其运算速度较低。

6.字长是描述CPU数据总线宽度的指标。

7.计算机的堆栈是一种特殊的数据存储区,数据存取采用先进先出的原则。

8.当运算结果各位全部为零时,标志ZF=0。

9.逻辑地址不是物理地址,但它是唯一的。

三、填空题

1.计算机是通过()、()、()总线把各个部件连接在一起,构成一个系统。

2.8086的数据总线是()位,地址总线是()位。

3.PC机主存储器中的基本存储单元的长度是()。

4.80486可访问8位、()、和()、()位的寄存器。

5.在微处理器的实地址方式下,段寄存器的作用是()。

6.若一个数中含有3个“1”,则其奇偶标志为()。

9.程序设计中使用的地址称为(),而CPU对存储器单元进行操作时使用的地址称为()。

12.微机的主要性能指标中,字长是指()。

13.微型计算机由()和()两大部分组成。

14.上电复位时,若CPU的CS=0FFFFH,IP=0000H,则第一条指令从()H方取

15.8088与外部交换数据的总线宽度是位,与寄存器组之间的数据总线宽度是位,EU内部总线宽度是位。

16.设AL=80H,AH=83H,AL和AH中的内容相加后,CF=,OF=,ZF=,PF=,AF=,SF=。

17.8086/8088将整个存储空间划分为许多逻辑段,每个逻辑段容量在

以内,各个逻辑段相互重叠。

18.8086/8088中,某单元只能有一个地址,但可以有多个地址。

19.如果对堆栈进行操作,则段基址来源于,偏移地址来源于。

20.某存储单元物理地址为32413H,则相对于段地址为3000H,其偏移地址为,若,它的偏移地址是1003H,则其段地址为。

21.在8086/8088系统中,所有读写存储器或I/O端口操作都是由通过系统总线完成的。

四、简答题

1.简述EU和BIU的主要功能

2.8086和8088的主要区别是什么

第1章微型计算机基础知识

一、选择题

1.D2.C3.B4.D5.C6.B

7.D8.C9.D10.A11.B12.C

13.D14.A15.B16.D17.D18.D

19.C20.D21.A22.B23.A24.C

25.B26.A27.B28.B29.B30.C

31.D32.D33.B34.D35.A36.C

37.B38.B39.A

二、判断题

1.×2.×3.×4.×5.×6.√7.×8.×9.×

三、填空题

1.地址;数据;控制

2.16,20

3.字节

4.16,32

5.存放段基址

6.1

8.SS,SP

9.逻辑地址,物理地址

10.外存

11.寄存器

12.一次能处理的二进制位数

13.软件,硬件

14.FFFF0H

15.8、8、16

16.1,1,0,1,0,0

17.64KB、可以

18.物理,逻辑

19.SS、SP

20.2413H、3141H

21.BIU(总线接口单元)

第2章指令系统及汇编语言程序设计

一.选择题二、判断题

1.指令MOVAX,[BX]的源操作数是寄存器寻址方式。

2.对堆栈区的操作必须遵循先进先出的原则。

3.比较两个带符号数的大小,可根据CF标志来判断。

4.逻辑操作符AND,OR,XOR和NOT,只能用于数字表达式。

5.不能给段寄存器赋立即数。

6.OF位可用来表示有符号数的溢出。

7.无条件转移指令只能用于段内直接转移。

8.MOVAX,[BP]的源操作数的物理地址为16*(DS)+(BP)。

9.指令MOVDI,OFFSET[BX][SI]是正确的。

10.指令MOVCS,BX是非法的。

11.指令NOTAX,BX是合法的。

12.MOV[BX][BP],AX是对的。

13.80486中对堆栈单元的存取操作是以字节为单位的。

14.JMP指令要影响标志位。

15.INC指令影响所有状态标志。

16.欲交换寄存器SI,DI的内容,可用指令XCHGSI,DI实现。

17.CPU中的程序计数器IP中存放的是指令的逻辑地址。

18.两个符号相同的数相减不会产生溢出。

19.汇编程序就是汇编语言程序。

20.相对寻址中的位移量只能用16位表示。

21.CLD指令是MOVSB指令的使用条件之一。

22.段寄存器间不能直接进行数据传送。

23.要把变量BUFF的有效地址送给BX,可用MOVBX,BUFF指令。

24.当对堆栈段的数据进行操作时,其操作数的有效地址可保存在BP中。

25.TEST指令属于逻辑运算指令。

26.CS和IP都不能作传送指令的目的操作数。

三、填空题

1.若SS=5310H,SP=0E30H,其物理地址为()。

2.若CH=07H,CL=08H,执行指令ADDCH,CL后,AF=(),CF=(),OF=(),PF=()。

3.指令由()和()两个字段构成。

4.条件转移指令JNE的测试条件是()。

5.若用指针(BP)访问存储器,则数据包含在()段中。

6.若AX=1234H,SP=1000H,指令PUSHAX执行后AX=(),SP=()。

7.指令采用()寻址方式时操作数是在代码段中。

四、阅读程序

1.程序中数据定义如下:

DATA1DW

DATA2DB32DUP()

DATA3DD

COUNTEQU$-DATA1

此时COUNT的值是()。

2.分析下列程序段,说出其功能。

MOVAX,1000H

MOVDS,AX

MOVES,AX

MOVSI,0100H

MOVDI,0200H

MOVCX,50D

REPMOVSB

3.写出下列程序段的功能

MOVBX,2000H

MOVDS,BX

XORAL,AL

MOVCX,100

AGAIN:

MOV[BX],AL

INCBX

LOOPAGAIN

4.写出下列程序段的功能

LEASI,BUFFER

LEADI,ARRAY

MOVCX,100

XORBL,BL

LP:

CMP[SI],01H

JNZLP1

INCBL

LP1:

INCSI

LOOPLP

MOV[DI],BL

5.写出下列程序段的功能

MOVCX,16

MOVAX,N

MOVBH,0

LP0:

SHLAX,1

JCLP

INCBH

LP:

LOOPLP0

MOVSUM,BH

6.写出下列程序段的功能

MOVAL,N

ANDN,0FH

MOVBL,N

SHRAL,4

MOVBH,AL

7.执行下列程序段后,AX=

MOVAX,0702H

MOVBH,09H

AAD

DIVBH

8.下面程序段执行后AL=

ABCDW2152H,3416H,5731H,4684H

MOVBX,OFFSETABC

MOVAL,3

XLAT

9.执行下面的程序段后AX=

MOVCX,5

MOVAX,50

NEXT:

SUBAX,CX

LOOPNEXT

HLT

10.执行下面的程序段后AX=

TABDW1,2,3,4,5,6

ENTRYEQU6

MOVBX,OFFSETTAB

ADDBX,ENTRY

MOVAX,[BX]

11.执行下面程序段后AX=

ARRAYDW1,2,3,4,5,6,7,8,9,10

COUNTEQU$-ARRAY

XORAX,AX

MOVCX,COUNT

MOVSI,OFFSETARRAY

NEXT:

ADDAX,[SI]

INCSI

LOOPNEXT

12.写出下列程序段的功能

MOVAH,1

INT21H

ANDAL,0FH

MOVBL,AL

MOVAH,1

INT21H

SHLAL,4

ANDAL,BL

将从键盘接受到的两个字符拼在一起

13.执行下列程序段后

NDB07H

XORBH,BH

MOVBL,N

RCLBL,1

ADDBH,BL

XORBH,0FFH

HLT

寄存器BH的值是,寄存器BL的值是。

14.分析下列程序段

MOVAL,N

XORAH,AH

MOVCL,4

DIVCL

当N=3CH时,程序执行完后AX=

15.程序段如下:

CLC

MOVAL,6

MOVBL,9

ADDAL,BL

MOVBL,AL

DAA

执行上面程序段后,AL=,AF=,BL=

16.执行下列指令后

TABLEDB19H,55H,9CH

LEABX,TABLE

MOVAL,[BX]

XORAL,89H

MOV[BX],AL

寄存器AL的值是

17.分析下列程序段,说明该程序段执行何种功能。

MOVCX,10

MOVDL,30H

NEXT1:

MOVAH,2

INT21H

INCDL

LOOPNEXT1

18.执行下列指令后

MOVAX,1245H

MOVBX,5689H

ADDAL,BL

MOVCL,AL

MOVAL,AH

ADCAL,BH

DAA

寄存器AL的值是,寄存器CL的值是

19.分析下列程序段:

 MOVAL,N

 XORAH,AH

 MOVBL,16

 DIVBL

当N=57H时,程序执行完后AX=

20.在下面程序的括号中分别填入如下指令:

①LOOPXH②LOOPNEXH③LOOPEXH

问在这三种情况下,当程序执行完后,AX、BX、CX、DX四个寄存器中的内容分别是什么

START:

MOVAX,04

MOVBX,02

MOVCX,03

MOVDX,05

XH:

INCAX

ADDBX,AX

SHRDX,1

()

HLT

21.阅读程序,请说出该程序的功能是什么

MOVAX,DATA

MOVDS,AX

LEASI,BUFFER

XORBL,BL

MOVCX,100

AGAIN:

MOVAL,[SI]

TESTAL,1

JNZNEXT

INCBL

NEXT:

INCSI

LOOPAGAIN

HLT

22.从键盘上接收一字符,若是“Y”转YES,是“N”转NO,否则继续等待,到输入“Y”或“N”为止。

程序段如下:

MOVAL,N

ANDAL,0FH

ADDAL,90H

DAA

ADCAL,40H

MOVRUT,AL

HLT

问:

①若N=5,下列程序执行后AL=②该程序段的功能是什么

23.执行下列程序段后:

DATASEGMENT

DT1LABLEWORD

DT2DB12H,34H

DATAENDS

………………

MOVAL,DT2

MOVDX,DT1

寄存器AL的值是①,寄存器DX的值是②。

24.读下列程序,请说出该程序的功能是什么

DATASEGMENT

SUMDW0

DATAENDS

STACKSEGMENT

DB200DUP()

STACKENDS

CODESEGMENT

ASSUMEDS:

DATA,SS:

STACK,CS:

CODE

START:

MOVAX,DATA

MOVDS,AX

MOVCX,50

MOVAX,0

MOVBX,1

NEXT:

ADDAX,BX

INCBX

INCBX

DECCX

JNENEXT

MOVSUM,AX

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

25.设伪指令定义如下,请画出内存分配示意图。

BUFDB

DW‘AB’

DW‘C’

DW1234H

DB‘EF’

26.执行下列程序段后:

DATASEGMENT

DT1DW8A9BH

DT2DB7CH,6DH

DATAENDS

  ┇

MOVAX,DT1

MOVBX,OFFSETDT1

MOVSI,OFFSETDT2

寄存器BX的值是①,寄存器SI的值是②。

27.执行下列指令后:

TABLEDB10H,33H,41H

┉┉

MOVBX,OFFSETTABLE

MOVAL,[BX]

XORAL,80H

MOV[BX],AL

寄存器AL的值是多少

28.执行下列程序段后:

DATASEGMENT

N1DW3355H

N2DB23H,89H

DATAENDS

 ┇

MOVAX,N1

MOVDI,OFFSETN1

MOVBP,OFFSETN2

寄存器DI的值是多少寄存器BP的值是多少

29.执行下列指令后:

DATDB10H,33H,41H

┉┉

LEABX,DAT

MOVAX,SEGDAT

MOVES,AX

MOVAL,ES:

[BX]

XORAL,80H

MOVES:

[BX],AL

寄存器AL的值是多少

30.执行下列程序段后:

BUFDB01H

……

XORAL,AL

MOVAL,BUF

MOVBL,AL

SALAL,1

ADDAL,BL

XORAL,0FFH

HLT

寄存器AL的值是多少寄存器BL的值是多少

五.程序填空

1.下列程序是在键盘上输入120个字符,然后将输入反序后显示在屏幕上。

请将程序填写完整。

STACK1SEGMENT

STPDW120DUP()

STACK1ENDS

CODESEGMENT

ASSUMECS:

CODE,SS:

STACK1

START:

MOVAX,STACK1

MOVSS,AX

MOVSP,SIZESTPMOVCX,120

LOOP1:

MOVAH,01H

INT21H

PUSHAX

()

MOVDL,0AH

MOVAH,02H

INT21H

MOVDL,0DH

INT21H

MOVCX,120

LOOP2:

()

MOVAH,02H

INT21H

LOOPLOOP2

MOVAH,4CH

INT21H

CODEENDS

ENDSTART

六、编写程序1.在STR到STR+49单元中存放着一个字符串,试编写一个程序,测试字符串中是否存在数字,如有,则把DL的第五位置1,否则将该位置0。

2.试编程实现,从键盘接收N个(N≤60)8位二进制数,统计其中奇数的个数,并将结果显示在屏幕上。

3.已知有100字节的数据块存放在以5C10H:

2000H开始的存储区内,要求编写一个完整程序将数据移动到以5C10H:

2008H开始的存储区内。

4.数组A包含100个互不相等的整数,数组B包含150个互不相等的整数,试编程实现将数组A和数组B都有的整数存放在数组C中。

5.在以BASE起始的表中存有一组字符,它以‘回车’(0DH)结束。

请编写程序:

实现从该表中查找关键字KEY(设关键字KEY在AL中),并将找到的第一个关键字偏离表首的位置存放在寄存器DX中,若无此关键字,DX返回值为-1。

7.编写程序找出BUF数据区中50个带符号数的最大值和最小值,并分别存入MAX和MIN单元。

8.试编程实现从键盘接收N个(N≤50)8位二进制数,统计偶数的个数及偶数之和,并将统计的个数以十进制方式显示在屏幕上。

9.以STRING起始的字符串的最大长度为80个字符,字符串的结束用字符$表示。

编写程序在该字符串中查找是否有空格符(ASCII码为20H),若有就将第一个空格字符串中的位置(00H~4FH)存入POST单元;若无空格则将-1存入POST。

10.BUFFER字节数组中存有一组无序列字节数数据,列的长度表示在BUFFER的第一个字节中KEY中为一个字节数据,编写程序在BUFFER中查找有无KEY,若有就结束,若没有就将KEY加入到BUFFER中去,并修改列的长度。

11.利用移位及数据循环指令完成将DHAL中的16位二进制乘以8的运算,结果仍存入DHAL中。

12.分别从键盘上接收两长度相等的组数A和B,试完成两数组的求和任务,将结果存放在数组C中,并显示在屏幕

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1