- 24.58 KB
- 2022-08-08 发布
- 1、本文档由用户上传,淘文库整理发布,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,请立即联系网站客服。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细阅读内容确认后进行付费下载。
- 网站客服QQ:403074932
第1章习题:1.1简答题(1)计算机字长指的是什么?处理器每个单位时间可以处理的二进制数据位数称为计算机字长。(2)总线信号分为哪三组?总线信号分为三组,分别是数据总线,地址总线和控制总线。(3)PC机主存采用的是DRAM还是SRAM?PC机主存采用的是DRAM组成。(4)Cache是什么意思?高速缓存存储器Cache是处理器与主存之间速度很快但容量较小的存储器。(5)ROM-BIOS是什么?ROM-BIOS是“基本输入输出系统”,操作系统通过对BIOS的调用驱动各硬件设备,用户也可以在应用程序中调用BIOS中的许多功能。(6)中断是什么?中断是CPU正常执行程序的流程被某种原因打断,并暂时停止,转向执行事先安排好的一段处理程序,待该处理程序结束后仍返会被中断的指令继续执行的过程。(7)32位PC机主机的芯片组是什么?主机芯片组是主板的核心部件,它提供主板上的关键逻辑电路。(8)MASM是指什么?MASM是微软开发的宏汇编程序。(9)处理器的“取指-译码-执行周期”是指什么?指令的处理过程。处理器的“取指-译码-执行周期”是指处理器从主存储器读取指令(简称取指),翻译指令代码的功能(简称译码),然后执行指令所规定的操作(简称执行)的过程。(10)在计算机系统层次结构中,哪一层起着承上启下,软硬件接口的作用?机器语言层,即指令集结构。1.2判断题(1)软件与硬件的等价性原理说明软硬件在功能,性能和成本等方面是等价的。(错)(2)IA-64结构是IA-32结构的64位扩展,也就是Intel64结构。(错)(3)8086的数据总线为16位,也就是说8086的数据总线的个数或者说条数,位数是16。(对)\n(4)微机主存只要使用RAM芯片就可以了。(错)(5)处理器并不是直接连接外设,而是通过I/O接口电路与外设连接。(对)(6)处理器是微机的控制中心,内部只包括5大功能部件的控制器。(错)(7)Windows的模拟DOS环境与控制台环境是一样的。(错)(8)16位IBMPC/AT采用ISA系统总线。(对)(9)IA-32处理器吸取了RISC技术特点。RISC是指复杂指令集计算机。(错)(10)处理器进行读操作,就是把数据从处理器内部读出传送给主存或外设。(错)1.3填空题(1)CPU是英文CentralProcessingUnit的缩写,中文译为中央处理单元,微型机采用处理器芯片构成CPU。(2)Intel8086支持1MB容量主存空间,80486支持4GB容量主存空间。(3)16位二进制共有216个编码组合,如果一位对应处理器的一个地址信号,16位地址信号共能寻址64KB容量主存空间。(4)DOS主要支持两种可执行文件,它们的扩展名分别是EXE,COM。(5)英文缩写ISA常表示PC工业标准结构总线,也表示指令集结构,后者的英文是InstructionSetArchitecture。(6)Windows的文件夹对应的专业术语是目录。(7)Pentium系列处理器的多媒体指令有MMX,SSE,SSE2和SSE3类指令。(8)Pentium处理器采用Intel8088处理器和64位数据总线与主存相连。(9)最初由IBM公司采用Intel8088处理器和DOS操作系统推出的PC机。(10)处理器执行指令的过程,可以简单地分为3个阶段,即取指、译码和执行周期。1.4说明微型计算机系统的硬件组成及各部分的作用。CPU:CPU也称处理器,是微机的核心。它采用大规模集成电路芯片,芯片内继承了控制器,运算器和若干高速存储单元(即寄存器)。处理器及其支持电路构成了微机系统的控制中心,对系统的各个部件进行统一的协调和控制。存储器:存储器是存放程序和数据的部件。外部设备:外部设备是指可与微机进行交互的输入(Input)设备和输出(Output)设备,也称I/O设备。I/O设备通过I/O接口与主机连接。总线:互连各个部件的共用通道,主要含数据总线、地址总线和控制总线信号。1.5什么是通用微处理器、单片机(微控制器)、DSP芯片、嵌入式系统?\n通用微处理器:适用较广的应用领域的微处理器,例如装在PC机、笔记本电脑、工作站、服务器上的微处理器。单片机:是指通常用于控制领域的微处理器芯片,其内部除CPU外还集成了计算机的其他一些主要部件,只需配上少量的外部电路和设备,就可以构成具体的应用系统。DSP芯片:称数字信号处理器,也是一种微控制器,其更适用处理高速的数字信号,内部集成有高速乘法器,能够进行快速乘法和加法运算。嵌入式系统:利用微控制器、数字信号处理器或通用微处理器,结合具体应用构成的操作系统。1.6简述Intel80x86系列处理器在指令集方面的发展。8086奠定了基本的16位指令集,80286提供了保护方式的各种指令,80386将指令集全面提升为32位,80486融入了浮点数据处理指令,奔腾系列陆续增加了多媒体指令MMX,SSE,SSE2和SSE3,最新的奔腾4处理器还支持64位指令集。1.7区别如下概念:助记符,汇编语言,汇编语言程序和汇编程序。助记符:人们采用便于记忆、并能描述指令功能的符号来表示机器指令操作码,该符号称为指令助记符。汇编语言:用助记符表示的指令以及使用它们编写程序的规则就形成汇编语言。汇编语言程序:用汇编语言书写的程序就是汇编语言程序,或称汇编语言源程序。汇编程序:汇编语言源程序要翻译成机器语言程序才可以由处理器执行。这个翻译的过程称为“汇编”,完成汇编工作的程序就是汇编程序。1.8区别如下概念:路径、绝对路径、相对路径、当前目录。系统磁盘上存某个可执行文件,但在DOS环境输入其文件名却提示没有这个文件,是什么原因?路径:操作系统以目录形式管理磁盘上的文件,文件所在的分区和目录就是该文件的路径。绝对路径:从根目录到文件所在目录的完整路径称为“绝对路径”。是保证文件唯一性的标示方法。相对路径:从系统当前目录到文件所在目录的路径称为相对路劲。当前目录:用户当前所在的目录就是当前目录。指明的路径不正确,或者执行了另外一个同名的文件。1.9什么事摩尔定律?它能永久成立吗?每18个月,集成电路的性能将提高一倍,而其价格将降低一半。不能。由于电子器件的物理极限在悄然逼近,摩尔定律不会永远持续。1.10冯诺伊曼计算机的基本设计思想是什么?\n采用二进制形式表示数据和指令。指令由操作码和地址码组成。将程序和数据存放在存储器中,计算机在工作时从存储器取出指令加以执行,自动完成计算任务。这就是“存储程序”和“程序控制”(简称存储程序控制)的概念。指令的执行是顺序的,即一般按照指令在存储器中存放的顺序执行,程序分支由转移指令实现。计算机由存储器、运算器、控制器、输入设备和输出设备五大基本部件组成,并规定了5部分的基本功能。1.11计算机系统通常划分为哪几个层次?普通计算机用户和软件开发人员对计算机系统的认识一样吗?最上层是用户层。第5层是高级语言层。第4层是汇编语言层。第3层是操作系统层。第2层是机器语言层。第1层是控制层。第0层是数字电路层。普通计算机用户和软件人员对计算机系统的认识并不一样。普通计算机用户看到的计算机,也就是我们最熟悉的计算机,属于用户层,而软件人员看到的属于高级语言层或是汇编语言层。1.12什么是系列机和兼容机?你怎样理解计算机中的“兼容”特性?例如,你可以用PC机为例,谈谈你对软件兼容(或兼容性)的认识,说明为什么PC机具有如此强大的生命力?系列机是指在一个厂家生产的具有相同计算机结构,但具有不同组成和实现的一系列(Family)不同档次、不同型号的机器。兼容机是指不同厂家生产的具有相同计算机结构(不同的组成和实现)的计算机。兼容是一个广泛的概念,包括软件兼容、硬件兼容、系统兼容等。其中软件兼容是指同一个软件可以不加修改地运行于体系结构相同的各档机器,结果一样但运行时间可能不同。软件兼容可从机器性能和推出时间分成向上(向下)和向前(向后)兼容。例如32位PC机就陆续增加了对浮点处理指令、多媒体指令等的支持。在保证向后兼容的前提下,不断改进其组成和实现,延续计算机结构的生命,才使得PC机具有如此强大的生命力。1.13英特尔公司最新Intel80x86处理器是什么?请通过查阅相关资料(如英特尔公司网站),说明其主要特点和采用的新技术。酷睿2多核处理器。1.14说明高级语言、汇编语言、机器语言三者的区别,谈谈你对汇编语言的认识。高级语言与具体的计算机硬件无关,其表达方式接近于所描述的问题,易为人们接受和掌握,用高级语言编写程序要比低级语言容易得多,并大大简化了程序的编制和调试,使编程效率得到大幅度的提高。而汇编语言是为了便于理解与记忆,将机器指令用助记符代替而形成的一种语言。汇编语言的语句通常与机器指令对应,因此,汇编语言与具体的计算机有关,属于低级语言。它比机器语言直观,容易理解和记忆,用汇编语言编写的程序也比机器语言易阅读、易排错。机器语言的每一条机器指令都是二进制形式的指令代码,计算机硬件可以直接识别。高级语言程序通常也需要翻译成汇编语言程序,再进一步翻译成机器语言代码。第2章习题:2.1简答题:\n(1)ALU是什么?ALU是算术逻辑运算单元,负责处理器所能进行的各种运算,主要是算术运算和逻辑运算。(2)8086的取指为什么可以称为指令预取?取指是指从主存取出指令代码通过总线传输到处理器内部指令寄存器的过程。8086分成总线接口单元和指令执行单元,可以独立操作。在执行单元执行一条指令的同时,总线接口单元可以读取下一条指令,等到执行时不需要进行取指了,所以称为预取。(3)Pentium的片上Cache采用统一存储结构还是分离存储结构?Pentium采用分离的Cache结构,一个用做指令Cache,一个用做数据Cache。(4)堆栈的存取原则是什么?堆栈的存取原则是先进后出(也称为后进先出)操作方式存取数据。(5)标志寄存器主要保存哪方面的信息?标志寄存器主要保存反映指令执行结果和控制指令执行形式的有关状态。(6)执行了一条加法指令后,发现ZF=1,说明结果是什么?执行了一条加法指令后,发现ZF=1,表明运算结果为0。(7)汇编语言中的标识符与高级语言中的变量和常量名的组成原则有本质的区别吗?没有。(8)汇编语言的标识符大小不敏感意味着什么?汇编语言的标识符大小写不敏感,即表示字母大小写不同、但表示同一个符号。(9)在汇编语言源程序中,END语句后得语句会被汇编吗?不会。(10)为什么将查找操作数的方法称为数据寻“址”方式?指令的操作数需要通过存储器地址或I/O地址,才能查找到数据本身,故称数据寻址方式。2.2判断题(1)程序计数器PC或指令指针EIP寄存器属于通用寄存器。(错)(2)处理器的指令译码是将指令代码翻译成它代表的功能的过程,与数字电路的译码器是不同的概念。(对)(3)EAX也被称为累加器,因为它使用最频繁。(对)(4)处理器的传送指令MOV属于汇编语言的执行性语句。(对)(5)汇编语言的语法由明显的4部分组成,不需要分隔符。(错)\n(6)80减90(80-90)需要借位,所以执行结束后,进位标志CF=1。(对)(7)MASM汇编语言的注释以分号开始,但不能用中文分号。(对)(8)IA-32处理器在实地址方式下,不能使用32位寄存器。(错)(9)存储器寻址方式的操作数当然在主存了。(对)(10)保护方式下,段基地址家偏移地址就是线性地址或物理地址。(对)2.3填空题(1)寄存器EDX是32位的,其中低16位的名称是DX,还可以分成两个8位的寄存器,其中D8~D15部分可以用名称DH表示。(2)IA-32处理器在保护方式下,段寄存器是16位的。(3)逻辑地址由段地址和偏移地址两部分组成。代码段中下一条要执行的指令由CS和EIP寄存器指示,后者在实地址模型中起作用的仅有IP寄存器部分。(4)进行8位二进制数加法:10111010+01101100,8位结果是00100110,标志PF=0。(5)在实地址工作方式下,逻辑地址“7380H:400H”表示的物理地址是73C00H,并且该段起始于73800H物理地址。(6)IA-32处理器有8个32位通用寄存器,其中EAX、EBX、ECX和EDX可以分成16位和8位操作;还有另外4个是ESI、EDI、EBP和ESP。(7)IA-32处理器复位后,首先进入的是实地址工作方式。该工作方式的分段最大不超过64KB。(8)MASM要求汇编语言源程序文件的扩展名是ASM,汇编产生扩展名为.OBJ的文件被称为目标模块文件,编写32位Windows应用程序应选择FLAT存储模型。(9)除外设数据外的数据寻址方式有3类,分别称为立即数寻址、寄存器寻址和存储器寻址。(10)用EBX作为基地址指令,默认采用DS段寄存器指向的数据段;如果采用BP,、BP或SP、ESP作为基地址指针,默认使用SS段寄存器指向堆栈段。2.4处理器内部具有哪3个基本部分?8086分为哪两大功能部件?其各自的主要功能是什么?处理器内部有ALU、寄存器和指令处理三个基本单元。 8086有两大功能部件:总线接口单元和执行单元。 总线接口单元:管理着8086与系统总线的接口,负责处理器对存储器和外设进行访问。8086所有对外操作必须通过BIU和这些总线进行。 执行单元EU:负责指令译码、数据运算和指令执行。2.58086怎样实现了最简单的指令流水线?\n8086中,指令的读取是在BIU单元,而指令的执行是在EU单元。因为BIU和EU两个单元相互独立、分别完成各自操作,所以可以并行操作。也就是说,在EU单元对一个指令进行译码执行时,BIU单元可以同时对后续指令进行读取;这就是最简单的指令流水线技术。2.6什么是标志?什么是IA-32处理器的状态标志、控制标志和系统标志?说明状态标志在标志寄存器EFLAGS的位置和含义。标志:用于反映指令执行结果或控制指令执行形式的一个或多个二进制数位。例如,有些指令执行后会影响有关标志位;有些指令的执行要利用相关标志。状态标志:用来记录程序运行结果的状态信息。 控制标志:DF标志,控制字符串操作的地址方向。 系统标志:用于控制处理器执行指令的方式。 状态标志在标志寄存器EFLAGS中的位置和含义如下: 31 11 10 9 8 7 6 5 4 3 2 1 0 „„ OF SF ZF AF PF CF2.7举例说明CF和OF标志的差异。进位标志CF表示无符号数运算结果是否超出范围,超出范围后加上进位或借位,运算结果仍然正确;溢出标志OF表示有符号数运算结果是否超出范围,如果超出范围,运算结果已经不正确。 例1:3AH + 7CH=B6H 无符号数运算:58+124=182,范围内,无进位。 有符号数运算:58+124=182,范围外,有溢出。 例2:AAH + 7CH=①26H 无符号数运算:170+124=294,范围外,有进位。 有符号数运算:-86+124=28 ,范围内,无溢出。2.8什么是8086中的逻辑地址和物理地址?逻辑地址如何转换成物理地址?请将如下逻辑地址用物理地址表达(均为十六进制形式): ① FFFF∶0 ② 40∶17 ③ 2000∶4500 ④ B821∶4567物理地址:在处理器地址总线上输出的地址称为物理地址。每个存储单元有一个唯一的物理地址。 逻辑地址:在处理器内部、程序员编程时采用逻辑地址,采用“段地址:偏移地址“形式。某个存储单元可以有多个逻辑地址,即处于不同起点的逻辑段中,但其物理地址是唯一的。 逻辑地址转换成物理地址:逻辑地址由处理器在输出之前转换为物理地址。将逻辑地址中的段地址左移二进制4位(对应16进制是一位,即乘以16),加上偏移地址就得到20位物理地址。 ① FFFFH:0=FFFF0H ② 40H:17H=00417H ③ 2000H:4500H=24500H ④ B821H:4567H=BC777H2.9IA-32处理器有哪三类基本段,各是什么用途?IA-32处理器有代码段、数据段、堆栈段三类基本段。 代码段:存放程序的指令代码。程序的指令代码必须安排在代码段,否则将无法正常执行。 \n数据段:存放当前运行程序所用的数据。程序中的数据默认是存放在数据段,也可以存放在其他逻辑段中。 堆栈段:主存中堆栈所在的区域。程序使用的堆栈一定在堆栈段。2.10什么是平展存储模型、段式存储模型和实地址存储模型?平展存储模型下,对程序来说存储器是一个连续的地址空间,称为线性地址空间。程序需要的代码、数据和堆栈都包含在这个地址空间中。 段式存储模型下,对程序来说存储器由一组独立的地址空间组成,独立的地址空间称为段。通常,代码、数据和堆栈位于分开的段中。 实地址存储模型是8086处理器的存储模型。它是段式存储模型的特例,其线性地址空间最大为1MB容量,由最大为64KB的多个段组成。2.11什么是实地址方式、保护方式和虚拟8086方式?它们分别使用什么存储模型?实地址方式:与8086具有相同的基本结构,只能寻址1MB物理存储器空间,逻辑段最大不超过64KB;但可以使用32位寄存器、32位操作数和32位寻址方式;相当于可以进行32位处理的快速8086。实地址工作方式只能支持实地址存储模型。 保护方式:具有强大的段页式存储管理和特权与保护能力,使用全部32条地址总线,可寻址4GB物理存储器。保护方式通过描述符实现分段存储管理,每个逻辑段可达4GB。处理器工作在保护方式时,可以使用平展或段式存储模型。 虚拟8086方式:在保护方式下运行的类似实方式的运行环境,只能在1MB存储空间下使用“16位段”。 处理器工作在虚拟8086方式时,只能使用实地址存储模型。2.12汇编语句有哪两种,每个语句由哪4个部分组成?汇编语句有两种:执行性语句(处理器指令)、说明性语句(伪指令)。 每个语句有:标号、指令助记符、操作数或参数、注释4个部分组成。2.13汇编语言程序的开发有哪4个步骤,分别利用什么程序完成、产生什么输出文件。汇编语言程序的开发有4个步骤: 编辑:用文本编辑器形成一个以ASM为扩展名的源程序文件。 汇编:用汇编程序将ASM文件转换为OBJ模块文件。 连接:用连接程序将一个或多个目标文件链接成一个EXE或COM可执行文件。 调试:用调试程序排除错误,生成正确的可执行文件。2.14MASM汇编语言中,下面哪些是程序员可以使用的正确的标识符。 FFH,DS,0xvab,Again,next,@data,h_ascii,6364b,.exit,smallFFH,Again,next,h_ascii2.15给出IA-32处理器的32位寻址方式和16位寻址方式的组成公式,并说明各部分作用。① 32位存储器寻址方式的组成公式 \n32位有效地址 = 基址寄存器+(变址寄存器×比例)+位移量 其中的4个组成部分是: ·基址寄存器任何8个32位通用寄存器之一; ·变址寄存器除ESP之外的任何32位通用寄存器之一; ·比例可以是1,2,4或8(因为操作数的长度可以是1,2,4或8字节); ·位移量可以是8或32位有符号值。 ② 16位存储器寻址方式的组成公式 16位有效地址 = 基址寄存器+变址寄存器+位移量 其中基址寄存器只能是BX或BP,变址寄存器只能是SI或DI,位移量是8或16位有符号值。2.16说明下列指令中源操作数的寻址方式?假设VARD是一个双字变量。 (1)mov edx,1234h (2)mov edx,vard (3)mov edx,ebx (4)mov edx,[ebx] (5)mov edx,[ebx+1234h] (6)mov edx,vard[ebx] (7)mov edx,[ebx+edi] (8)mov edx,[ebx+edi+1234h] (9)mov edx,vard[esi+edi] (10)mov edx,[ebp*4]① 立即数 ② 直接 ③ 寄存器 ④ 寄存器间接 ⑤ 寄存器相对 ⑥ 寄存器相对 ⑦ 基址变址 ⑧ 相对基址变址 ⑨ 相对基址变址 ⑩ 带比例寻址