谁有计算机组成原理期末考试试题啊,帮帮忙吧,谢谢!

谁有计算机组成原理期末考试试题啊,帮帮忙吧,谢谢!,第1张

计算机组成原理试题

一、选择题(共20分,每题1分)

1.零地址运算指令在指令格式中不给出 *** 作数地址,它的 *** 作数来自____C__。

A.立即数和栈顶;

B.暂存器;

C.栈顶和次栈顶;

D.累加器。

2.___C___可区分存储单元中存放的是指令还是数据。

A.存储器;

B.运算器;

C.控制器;

D.用户。

3.所谓三总线结构的计算机是指_B_____。

A.地址线、数据线和控制线三组传输线。

B.I/O总线、主存总统和DMA总线三组传输线;

C.I/O总线、主存总线和系统总线三组传输线;

D.设备总线、主存总线和控制总线三组传输线.。

4.某计算机字长是32位,它的存储容量是256KB,按字编址,它的寻址范围是_____B_。

A.128K;

B.64K;

C.64KB;

D.128KB。

5.主机与设备传送数据时,采用___A___,主机与设备是串行工作的。

A.程序查询方式;

B.中断方式;

C.DMA方式;

D.通道。

6.在整数定点机中,下述第___B___种说法是正确的­。

A.原码和反码不能表示 -1,补码可以表示 -1;

B.三种机器数均可表示 -1;

C.三种机器数均可表示 -1,且三种机器数的表示范围相同;

D.三种机器数均不可表示 -1。

7.变址寻址方式中, *** 作数的有效地址是___C___。

A.基址寄存器内容加上形式地址(位移量);

B.程序计数器内容加上形式地址;

C.变址寄存器内容加上形式地址;

D.以上都不对。

8.向量中断是___C___。

A.外设提出中断;

B.由硬件形成中断服务程序入口地址;

C.由硬件形成向量地址,再由向量地址找到中断服务程序入口地址

D.以上都不对。

9.一个节拍信号的宽度是指_____C_。

A.指令周期;

B.机器周期;

C.时钟周期;

D.存储周期。

10.将微程序存储在EPROM中的控制器是____A__控制器。

A.静态微程序;

B.毫微程序;

C.动态微程序;

D.微程序。

11.隐指令是指___D___。

A. *** 作数隐含在 *** 作码中的指令;

B.在一个机器周期里完成全部 *** 作的指令;

C.指令系统中已有的指令;

D.指令系统中没有的指令。

12.当用一个16位的二进制数表示浮点数时,下列方案中第____B_种最好。

A.阶码取4位(含阶符1位),尾数取12位(含数符1位);

B.阶码取5位(含阶符1位),尾数取11位(含数符1 位);

C.阶码取8位(含阶符1位),尾数取8位(含数符1位);

D.阶码取6位(含阶符1位),尾数取12位(含数符1位)。

13.DMA方式__B____。

A.既然能用于高速外围设备的信息传送,也就能代替中断方式;

B.不能取代中断方式;

C.也能向CPU请求中断处理数据传送;

D.内无中断机制。

14.在中断周期中,由____D__将允许中断触发器置“0”。

A.关中断指令;

B.机器指令;

C.开中断指令;

D.中断隐指令。

15.在单总线结构的CPU中,连接在总线上的多个部件__B____。

A.某一时刻只有一个可以向总线发送数据,并且只有一个可以从总线接收数据;

B.某一时刻只有一个可以向总线发送数据,但可以有多个同时从总线接收数据;

C.可以有多个同时向总线发送数据,并且可以有多个同时从总线接收数据;

D.可以有多个同时向总线发送数据,但可以有一个同时从总线接收数据。

16.三种集中式总线控制中,___A___方式对电路故障最敏感。

A.链式查询;

B.计数器定时查询;

C.独立请求;

D.以上都不对。

17.一个16K×8位的存储器,其地址线和数据线的总和是__D____。

A.48;

B.46;

C.17;

D.22.

18.在间址周期中,__C____。

A.所有指令的间址 *** 作都是相同的;

B.凡是存储器间接寻址的指令,它们的 *** 作都是相同的;

C.对于存储器间接寻址或寄存器间接寻址的指令,它们的 *** 作是不同的;

D.以上都不对。

19.下述说法中____B__是正确的。

A.EPROM是可改写的,因而也是随机存储器的一种;

B.EPROM是可改写的,但它不能用作为随机存储器用;

C.EPROM只能改写一次,故不能作为随机存储器用;

D.EPROM是可改写的,但它能用作为随机存储器用。

20.打印机的分类方法很多,若按能否打印汉字来区分,可分为_C_____。

A.并行式打印机和串行式打印机;

B.击打式打印机和非击打式打印机;

C.点阵式打印机和活字式打印机;

D.激光打印机和喷墨打印机。

二、填空(共20分,每空1分)

1.设浮点数阶码为8位(含1位阶符),尾数为24位(含1位数符),则32位二进制补码浮点规格化数对应的十进制真值范围是:最大正数为 2127(1-2-23) ,最小正数为 2-129 ,最大负数为 2-128(-2-1-2-23) ,最小负数为 -2127 。

2.指令寻址的基本方式有两种,一种是 顺序 寻址方式,其指令地址由 程序计数器 给出,另一种是 跳跃 寻址方式,其指令地址由 指令本身 给出。

3.在一个有四个过程段的浮点加法器流水线中,假设四个过程段的时间分别是T1 = 60ns﹑T2 = 50ns﹑T3 = 90ns﹑T4 = 80ns。则加法器流水线的时钟周期至少为 90ns 。如果采用同样的逻辑电路,但不是流水线方式,则浮点加法所需的时间为280ns 。

4.一个浮点数,当其尾数右移时,欲使其值不变,阶码必须 增加 。尾数右移1位,阶码 加1 。

5.存储器由m(m=1,2,4,8…)个模块组成,每个模块有自己的 地址 和

数据 寄存器,若存储器采用 模m 编址,存储器带宽可增加到原来的 m 倍。

6.按序写出多重中断的中断服务程序包括 保护现场 、 开中断 、 设备服务|。。 恢复现场 和中断返回几部分。

1.A.A.2127(1-2-23) B.2-129 C.2-128(-2-1-2-23) D.-2127

三、名词解释(共10分,每题2分)

1.微 *** 作命令和微 *** 作

答:微 *** 作命令是控制完成微 *** 作的命令;微 *** 作是由微 *** 作命令控制实现的最基本 *** 作。

2.快速缓冲存储器

答:快速缓冲存储器是为了提高访存速度,在CPU和主存之间增设的高速存储器,它对用户是透明的。只要将CPU最近期需用的信息从主存调入缓存,这样CPU每次只须访问快速缓存就可达到访问主存的目的,从而提高了访存速度。

3.基址寻址

答:基址寻址有效地址等于形式地址加上基址寄存器的内容。

4.流水线中的多发技术

答:为了提高流水线的性能,设法在一个时钟周期(机器主频的倒数)内产生更多条指令的结果,这就是流水线中的多发技术。

5.指令字长

答:指令字长是指机器指令中二进制代码的总位数。

四、计算题(5分)

设机器数字长为8位(含1位符号位),设A= ,B= ,计算[A B]补,并还原成真值。

计算题 答:[A+B]补=11011110, A+B =(-17/64)

[A-B]补=11000110, A-B =(35/64)

五、简答题(共20分)

1.异步通信与同步通信的主要区别是什么,说明通信双方如何联络。(4分)

同步通信和异步通信的主要区别是前者有公共时钟,总线上的所有设备按统一的时序,统一的传输周期进行信息传输,通信双方按约定好的时序联络。后者没有公共时钟,没有固定的传输周期,采用应答方式通信,具体的联络方式有不互锁、半互锁和全互锁三种。不互锁方式通信双方没有相互制约关系;半互锁方式通信双方有简单的制约关系;全互锁方式通信双方有完全的制约关系。其中全互锁通信可靠性最高。

2.为什么外围设备要通过接口与CPU相连?接口有哪些功能?(6分)

答:外围设备要通过接口与CPU相连的原因主要有:

(1)一台机器通常配有多台外设,它们各自有其设备号(地址),通过接口可实现对设备的选择。

(2)I/O设备种类繁多,速度不一,与 CPU速度相差可能很大,通过接口可实现数据缓冲,达到速度匹配。

(3)I/O设备可能串行传送数据,而CPU一般并行传送,通过接口可实现数据串并格式转换。

(4)I/O设备的入/出电平可能与CPU的入/出电平不同,通过接口可实现电平转换。

(5)CPU启动I/O设备工作,要向外设发各种控制信号,通过接口可传送控制命令。

(6)I/O设备需将其工作状况(“忙”、“就绪”、“错误”、“中断请求”等)及时报告CPU,通过接口可监视设备的工作状态,并保存状态信息,供CPU查询。

可见归纳起来,接口应具有选址的功能、传送命令的功能、反映设备状态的功能以及传送数据的功能(包括缓冲、数据格式及电平的转换)。

六、问答题(共15分)

1.设CPU中各部件及其相互连接关系如下图所示。图中W是写控制标志,R是读控制标志,R1和R2是暂存器。(8分)

(1)假设要求在取指周期由ALU完成 (PC) + 1→PC的 *** 作(即ALU可以对它的一个源 *** 作数完成加1的运算)。要求以最少的节拍写出取指周期全部微 *** 作命令及节拍安排。

答:由于 (PC) + 1→PC需由ALU完成,因此PC的值可作为ALU的一个源 *** 作数,靠控制ALU做+1运算得到 (PC) + 1,结果送至与ALU输出端相连的R2,然后再送至PC。

此题的关键是要考虑总线冲突的问题,故取指周期的微 *** 作命令及节拍安排如下:

T0 PC→MAR,1→R

T1 M(MAR)→MDR,(PC) + 1→R2

T2 MDR→IR,OP(IR)→微 *** 作命令形成部件

T3 R2→PC

(2)写出指令ADD # α(#为立即寻址特征,隐含的 *** 作数在ACC中)在执行阶段所需的微 *** 作命令及节拍安排。

答:立即寻址的加法指令执行周期的微 *** 作命令及节拍安排如下:

T0 Ad(IR)→R1 ;立即数→R1

T1 (R1) + (ACC)→R2 ;ACC通过总线送ALU

T2 R2→ACC ;结果→ACC

2.DMA接口主要由哪些部件组成?在数据交换过程中它应完成哪些功能?画出DMA工作过程的流程图(不包括预处理和后处理)

答:DMA接口主要由数据缓冲寄存器、主存地址计数器、字计数器、设备地址寄存器、中断机构和DMA控制逻辑等组成。在数据交换过程中,DMA接口的功能有:(1)向CPU提出总线请求信号;(2)当CPU发出总线响应信号后,接管对总线的控制;(3)向存储器发地址信号(并能自动修改地址指针);(4)向存储器发读/写等控制信号,进行数据传送;(5)修改字计数器,并根据传送字数,判断DMA传送是否结束;(6)发DMA结束信号,向CPU申请程序中断,报告一组数据传送完毕。DMA工作过程流程如图所示。

七、设计题(10分)

设CPU共有16根地址线,8根数据线,并用 作访存控制信号(低电平有效),用 作读写控制信号(高电平为读,低电平为写)。现有下列芯片及各种门电路(门电路自定),如图所示。画出CPU与存储器的连接图,要求:

(1)存储芯片地址空间分配为:最大4K地址空间为系统程序区,相邻的4K地址空间为系统程序工作区,最小16K地址空间为用户程序区;

(2)指出选用的存储芯片类型及数量;

(3)详细画出片选逻辑。

(1)主存地址空间分配:

6000H~67FFH为系统程序区;

6800H~6BFFH为用户程序区。

答:(1)主存地址空间分配。(2分)

A15 … A11 … A7 … … A0

最大4K 2K×8位ROM 2片

相邻4K 4K×4位RAM 2片

最小16K 8K×8位RAM 2片

(2)合理选用上述存储芯片,说明各选几片?

2)根据主存地址空间分配

最大4K地址空间为系统程序区,选用2片2K×8位ROM芯片;(1分)

相邻的4K地址空间为系统程序工作区,选用2片4K×4位RAM芯片;(1分)

最小16K地址空间为用户程序区,选用2片8K×8位RAM芯片。(1分)

(3)详细画出存储芯片的片选逻辑图。

答案:

一、选择题(共20分,每题1分)

1.C 2.C 3.B 4.B 5.A 6.B 7.C

8.C 9.C 10.A 11.D 12.B 13.B 14.D

15.B 16.A 17.D 18.C 19.B 20.C

二、填空(共20分,每空1分)

1.A.A.2127(1-2-23) B.2-129 C.2-128(-2-1-2-23) D.-2127

2.A. 顺序 B.程序计数器 C.跳跃 D. 指令本身

3.A.90ns B.280ns

4.A.A.增加 B.加1

5.A.地址 B.数据 C.模m D.m

6.A.保护现场 B.开中断 C.设备服务 D.恢复现场

三、名词解释(共10分,每题2分)

1.微 *** 作命令和微 *** 作

答:微 *** 作命令是控制完成微 *** 作的命令;微 *** 作是由微 *** 作命令控制实现的最基本 *** 作。

2.快速缓冲存储器

答:快速缓冲存储器是为了提高访存速度,在CPU和主存之间增设的高速存储器,它对用户是透明的。只要将CPU最近期需用的信息从主存调入缓存,这样CPU每次只须访问快速缓存就可达到访问主存的目的,从而提高了访存速度。

3.基址寻址

答:基址寻址有效地址等于形式地址加上基址寄存器的内容。

4.流水线中的多发技术

答:为了提高流水线的性能,设法在一个时钟周期(机器主频的倒数)内产生更多条指令的结果,这就是流水线中的多发技术。

5.指令字长

答:指令字长是指机器指令中二进制代码的总位数。

四、(共5分)

计算题 答:[A+B]补=11011110, A+B =(-17/64)

[A-B]补=11000110, A-B =(35/64)

五、简答题(共20分)

1.(4分)答:

同步通信和异步通信的主要区别是前者有公共时钟,总线上的所有设备按统一的时序,统一的传输周期进行信息传输,通信双方按约定好的时序联络。后者没有公共时钟,没有固定的传输周期,采用应答方式通信,具体的联络方式有不互锁、半互锁和全互锁三种。不互锁方式通信双方没有相互制约关系;半互锁方式通信双方有简单的制约关系;全互锁方式通信双方有完全的制约关系。其中全互锁通信可靠性最高。

2.(6分,每写出一种给1分,最多6分)

答:外围设备要通过接口与CPU相连的原因主要有:

(1)一台机器通常配有多台外设,它们各自有其设备号(地址),通过接口可实现对设备的选择。

(2)I/O设备种类繁多,速度不一,与 CPU速度相差可能很大,通过接口可实现数据缓冲,达到速度匹配。

(3)I/O设备可能串行传送数据,而CPU一般并行传送,通过接口可实现数据串并格式转换。

(4)I/O设备的入/出电平可能与CPU的入/出电平不同,通过接口可实现电平转换。

(5)CPU启动I/O设备工作,要向外设发各种控制信号,通过接口可传送控制命令。

(6)I/O设备需将其工作状况(“忙”、“就绪”、“错误”、“中断请求”等)及时报告CPU,通过接口可监视设备的工作状态,并保存状态信息,供CPU查询。

可见归纳起来,接口应具有选址的功能、传送命令的功能、反映设备状态的功能以及传送数据的功能(包括缓冲、数据格式及电平的转换)。

4.(5分)答:

(1)根据IR和MDR均为16位,且采用单字长指令,得出指令字长16位。根据105种 *** 作,取 *** 作码7位。因允许直接寻址和间接寻址,且有变址寄存器和基址寄存器,因此取2位寻址特征,能反映四种寻址方式。最后得指令格式为:

7

2

7

OP

M

AD

其中 OP *** 作码,可完成105种 *** 作;

M 寻址特征,可反映四种寻址方式;

AD形式地址。

这种格式指令可直接寻址27 = 128,一次间址的寻址范围是216 = 65536。

(2)双字长指令格式如下:

7

2

7

OP

M

AD1

AD2

其中 OP、M的含义同上;

AD1∥AD2为23位形式地址。

这种格式指令可直接寻址的范围为223 = 8M。

(3)容量为8MB的存储器,MDR为16位,即对应4M×16位的存储器。可采用双字长指令,直接访问4M存储空间,此时MAR取22位;也可采用单字长指令,但RX和RB取22位,用变址或基址寻址访问4M存储空间。

六、 (共15分)问答题

1.(8分)答:

(1)由于 (PC) + 1→PC需由ALU完成,因此PC的值可作为ALU的一个源 *** 作数,靠控制ALU做+1运算得到 (PC) + 1,结果送至与ALU输出端相连的R2,然后再送至PC。

此题的关键是要考虑总线冲突的问题,故取指周期的微 *** 作命令及节拍安排如下:

T0 PC→MAR,1→R

T1 M(MAR)→MDR,(PC) + 1→R2

T2 MDR→IR,OP(IR)→微 *** 作命令形成部件

T3 R2→PC

(2)立即寻址的加法指令执行周期的微 *** 作命令及节拍安排如下:

T0 Ad(IR)→R1 ;立即数→R1

T1 (R1) + (ACC)→R2 ;ACC通过总线送ALU

T2 R2→ACC ;结果→ACC

2.(7分)答:DMA接口主要由数据缓冲寄存器、主存地址计数器、字计数器、设备地址寄存器、中断机构和DMA控制逻辑等组成。在数据交换过程中,DMA接口的功能有:(1)向CPU提出总线请求信号;(2)当CPU发出总线响应信号后,接管对总线的控制;(3)向存储器发地址信号(并能自动修改地址指针);(4)向存储器发读/写等控制信号,进行数据传送;(5)修改字计数器,并根据传送字数,判断DMA传送是否结束;(6)发DMA结束信号,向CPU申请程序中断,报告一组数据传送完毕。DMA工作过程流程如图所示。

七、设计题(共10分)

答:

(1)主存地址空间分配。(2分)

A15 … A11 … A7 … … A0

最大4K 2K×8位ROM 2片

相邻4K 4K×4位RAM 2片

最小16K 8K×8位RAM 2片(2)根据主存地址空间分配

最大4K地址空间为系统程序区,选用2片2K×8位ROM芯片;(1分)

相邻的4K地址空间为系统程序工作区,选用2片4K×4位RAM芯片;(1分)

最小16K地址空间为用户程序区,选用2片8K×8位RAM芯片。(1分)

(3)存储芯片的片选逻辑图(5分)

*** 作系统定义: *** 作系统(英语:operating system,缩写作 OS)是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。 *** 作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、 *** 作网络与管理文件系统等基本事务。 *** 作系统也提供一个让用户与系统交互的 *** 作界面。

*** 作系统作用: *** 作系统位于底层硬件与用户之间,是两者沟通的桥梁。用户可以通过 *** 作系统的用户界面,输入命令。 *** 作系统则对命令进行解释,驱动硬件设备,实现用户要求。以现代标准而言,一个标准PC的 *** 作系统应该提供以下的功能:

1、进程管理。又称处理器管理,其主要任务是对处理器的时间进行合理分配、对处理器的运行实施有效的管理。

2、存储器管理。由于多道程序共享内存资源,所以存储器管理的主要任务是对存储器进行分配、保护和扩充。

3、设备管理。根据确定的设备分配原则对设备进行分配,使设备与主机能够并行工作,为用户提供良好的设备使用界面。

4、文件管理。有效地管理文件的存储空间,合理地组织和管理文件系统,为文件访问和文件保护提供更有效的方法及手段。

5、用户接口。用户 *** 作计算机的界面称为用户接口(或用户界面),通过用户接口,用户只需进行简单 *** 作,就能实现复杂的应用处理。

扩展资料:

*** 作系统的类型非常多样,不同机器安装的 *** 作系统可从简单到复杂,可从移动电话的嵌入式系统到超级计算机的大型 *** 作系统。许多 *** 作系统制造者对它涵盖范畴的定义也不尽一致,例如有些 *** 作系统集成了图形用户界面,而有些仅使用命令行界面,而将图形用户界面视为一种非必要的应用程序。

第一部计算机并没有 *** 作系统。这是由于早期计算机的创建方式(如同建造机械算盘)与性能不足以运行如此程序。但在1947年发明了晶体管,以及莫里斯·威尔克斯发明的微程序方法,使得计算机不再是机械设备,而是电子产品。

系统管理工具以及简化硬件 *** 作流程的程序很快就出现了,且成为 *** 作系统的起源。到了1960年代早期,商用计算机制造商制造了批处理系统,此系统可将工作的建置、调度以及运行序列化。

此时,厂商为每一台不同型号的计算机创造不同的 *** 作系统,因此为某计算机而写的程序无法移植到其他计算机上运行,即使是同型号的计算机也不行。

参考资料:

百度百科--- *** 作系统

问题一:什么是汇编语言? 计算机程序设计语言的发展,经历了从机器语言、汇编语言到高级语言的历程。

1 机器语言

电子计算机所使用的是由“0”和“1”组成的二进制数,二进制是计算机的语言的基础。计算机发明之初,人们只能降贵纡尊,用计算机的语言去命令计算机干这干那,一句话,就是写出一串串由“0”和“1”组成的指令序列交由计算机执行,这种语言,就是机器语言。使用机器语言是十分痛苦的,特别是在程序有错需要修改时,更是如此。而且,由于每台计算机的指令系统往往各不相同,所以,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另编程序,造成了重复工作。但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中最高的。机器语言,是第一代计算机语言。

2 汇编语言

为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“A D D”代表加法,“M O V”代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言。然而计算机是不认识这些符号的,这就需要一个专门的程序,专门负责将这些符号翻译成二进制数的机器语言,这种翻译程序被称为汇编程序。

汇编语言同样十分依赖于机器硬件,移植性不好,但效率仍十分高,针对计算机特定硬件而编制的汇编语言程序,能准确发挥计算机硬件的功能和特长,程序精炼而质量高,所以至今仍是一种常用而强有力的软件开发工具。

3 高级语言

从最初与计算机交流的痛苦经历中,人们意识到,应该设计一种这样的语言,这种语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。经过努力,1 9 5 4年,第一个完全脱离机器硬件的高级语言―F O RT R A N问世了,4 0多年来,共有几百种高级语言出现,有重要意义的有几十种,影响较大、使用较普遍的有F O RT R A N、A L G O L、C O B O L、B A S I C、L I S P、S N O B O L、P L / 1、P a s c a l、C、P R O L O G、A d a、C + +、V C、V B、D e l p h i、J AVA 等。

高级语言的发展也经历了从早期语言到结构化程序设计语言,从面向过程到非过程化程序语言的过程。相应地,软件的开发也由最初的个体手工作坊式的封闭式生产,发展为产业化、流水线式的工业化生产。

6 0年代中后期,软件越来越多,规模越来越大,而软件的生产基本上是人自为战,缺乏科学规范的系统规划与测试、评估标准,其恶果是大批耗费巨资建立起来的软件系统,由于含有错误而无法使用,甚至带来巨大损失,软件给人的感觉是越来越不可靠,以致几乎没有不出错的软件。这一切,极大地震动了计算机界,史称“软件危机”。人们认识到:大型程序的编制不同于写小程序,它应该是一项新的技术,应该像处理工程一样处理软件研制的全过程。程序的设计应易于保证正确性,也便于验证正确性。1 9 6 9年,提出了结构化程序设计方法,1 9 7 0年,第一个结构化程序设计语言―P a s c a l语言出现,标志着结构化程序设计时期的开始。

8 0年代初开始,在软件设计思想上,又产生了一次革命,其成果就是面向对象的程序设计。在此之前的高级语言,几乎都是面向过程的,程序的执行是流水线似的,在一个模块被执行完成前,人们不能干别的事,也无法动态地改变程序的执行方向。这和人们日常处理事物的>>

问题二:什么是汇编语言 汇编语言它是计算机语言,计算机语言说通俗点就是人类与计算机(CPU)沟通的桥梁,计算机它不认识人类的语言,听不懂也读不懂,要让计算机替我们去完成我们的工作,就需要我们将要交给计算机完成的任务翻译为计算机语言。汇编语言是各种语言中的一种,它属于低级的计算机语言,这是相对于面向过程的C语言,以及面向对象的C++,java而言。它是除机器语言以外最接近硬件的计算机语言,而且可以通过学习汇编语言深入的了解 *** 作系统的底层运行机制,并以CPU的角度思考问题。这样可以让你在编写高级语言的程序的时候避免很多错误,并且能更深入理解高级语言的执行 原理。因为汇编语言属于低级语言,所以既然低级就肯定不容易被普通用户认识,这需要一定的硬件基础知识和一些计算机工作原理的知识。以前在大学阶段学过汇编语言,但没有当回事儿,连作业都是复制加粘贴完成的(像这样的不在少数吧:))。工作以后才发现这个语言是个好东西,它其实是个非常重要的基础课程。所以现在有时间就把书打开多看一点,学一点。汇编语言目前常见的有两种:一个是基于8086/88架构的DOS下的16位汇编语言,还有就是基于80386架构及其以后型号的windows下32位汇编语言。我不知道linux下有没有汇编语言。顺便说一下,不管什么汇编语言它所编出来的程序都属于软件,所以不管什么软件都需要依赖 *** 作系统这个基础平台,它才可以被硬件CPU所执行,因为 *** 作系统就是提供硬件与用户之间的接口,所有软件都要通过它来分配到硬件资源(不知道对不对哈:)才可以被执行)。一般先学习16位的DOS汇编,然后再学32位的windows汇编。所以我们先谈谈16位的DOS汇编哈。要学汇编语言首先就是要了解CPU,你只有了解了CPU才能了解汇编语言的执行,因为它基本就是直接在 *** 作CPU的各个组成单元(像寄存器)。在 上找了这个图,如下:上面这个CPU的逻辑结构图是8088的,8088和8086大的架构差不多,所以就以这个为例介绍下各个组成部分的作用。主寄存器:AX(AH,AL)累加寄存器,一般用作暂存数据;BX(BH,BL)基址寄存器,一般用作偏移地址存放;CX(CH,CL)计数寄存器,一般用在循环控制次数;DX(DH,DL)数据寄存器,好像和AX差不多吧;SP堆栈指针寄存器,栈指针;BP基址指针寄存器,可作SP使用;SI源变址寄存器和DI目的变址寄存器,这两个做为BX扩展用于偏移地址存放。段寄存器: CS:代码段寄存器,任何一个程序都是从代码段开始执行的,CS寄存器指明了代码段的段地址。DS:数据段寄存器,存放程序中数据部分的段地址。SS:堆栈段寄存器,堆栈是内存中特殊的内存块,堆与栈不同,目前我只知道栈是尊循“先进后出,后进先出”的原则而使用。ES:附加段寄存器,应该是作为DS数据段寄存器的扩充吧。地址加法器: 这是用在对内存寻址时所使用,它通过将段寄存器中的段地址与BX、SI、DI等寄存器中的偏移地址作一定处理从而输出物理地址,然后就可以访问内存单元了。汇编程序中的地址只是逻辑地址,并不是真实的内存上的地址。在程序实际运行时每次访问内存都会先将逻辑地址转换成物理地址才可以访问到物理内存。关于CPU寻址,逻辑地址,物理地址我也会再写篇文章来讨论。逻辑运算单元和控制单元:这是CPU最核心的单元,我们暂只记住它们是负责执行与控制就好了。内部数据,地址总线:CPU内部各部件之间通信的通道。外部地址总线:用来传输CPU想要读取/写入内存单元的物理地址。它的宽度就决定了CPU能够访问的内存的最大容量。外部数据和控制总>>

问题三:简述用汇编语言进行程序设计的步骤。 汇编语言程序设计步骤:

(1)分析问题:已知条件、要解决的问题、功能/性能要求等。

(2)建立数学模型:把问题数学化、公式化,便于计算机处理。

(3)确定算法:简单、速度快、精度高、代码量小、编程容易。

(4)绘制程序流程图:用箭头、框图、菱形图等表示程序结构。

(5)内存空间分配:为程序或数据分配内存空间。

(6)编制程序与静态检查:程序结构层次简单、清楚、易懂。

(7)程序调试:利用调试软件DEBUG进行调试。

问题四:1、汇编程序与汇编语言源程序的区别? 汇编程序是汇编语言源程序经过编译后的结果

用标号是为了标记程序段,内存段,跳转位置等等

loop p ov add1可以

问题五:编程语言和汇编语言有什么区别啊 计算机语言从低级到高级可以分为:

机器语言,即由0、1组成的机器硬件可以识别的语言;

低级语言,即汇编语言

中级语言,如C语言

高级语言,如C++,JAVA,C#等。

汇编语言是将由0、1组成的机器语言用具有简单语义的英文代码表示,以便于理解和程序员编程。汇编语言通常用于对硬件的直接 *** 控。由于汇编语言编写的程序很小,所以通常在程序中最核心的、控制硬件的代码可以采用汇编语言编写,一方面是安全,另一方面提高运行速度。

对于计算机的初学者,应该从中高级语言学起,如c语言,vb,java等,如果你是想要学习如何编程,学习一到两门高级语言已经够用了。

如果你已经掌握了基本的编程技能,最好是可以学习数据结构和 *** 作系统以及计算机硬件的基本工作原理,以便优化你编写的程序,提高安全性和运行效率。

如果你想要从事更高级的开发工作,则可能需要学习汇编语言。

在高校中,计算机科技专业的学生汇编语言是必修课,而软件工程专业的学生则对汇编语言不做要求。

至于汇编与编程的区别是显而易见的,汇编语言是一种用于编写某些程序的语言。而编程则是程序员用某种语言编写程序的过程。

问题六:汇编语言是什么扩展名 ASM的扩展名

问题七:汇编语言程序的开发有哪4个步骤 编辑:使用记事本,生成:.ASM 文件。 编译:使用 MASM.EXE ,生成:.OBJ 文件。 连接:使用 LINK.EXE,生成:.EXE 文件。 执行:使用 .EXE 文件。

问题八:汇编语言子程序是如何定义的 直接jmp跳转过去,然后ret回来。

call xxx

xxx proc uses eax,esi,edi,var:ddword

xxx endp

也可以带参数的。第二种方式格式就是这样,说白了也是jmp跳转。只是经过了编译器优化。防止程序员跳转,导致堆栈前后不对齐。

问题九:汇编语言有什么特点 汇编语言的总体特点1.机器相关性

这是一种面向机器的低级语言,通常是为特定的计算机或系列计算机专门设计的。因为是机器指令的符号化表示,故不同的机器就有不同的汇编语言。使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。

2.高速度和高效率

汇编语言保持了机器语言的优点,具有直接和简捷的特点,可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等,且占用内存少,执行速度快,是高效的程序设计语言。

3.编写和调试的复杂性

由于是直接控制硬件,且简单的任务也需要很多汇编语言语句,因此在进行程序设计时必须面面俱到,需要考虑到一切可能的问题,合理调配和使用各种软、硬件资源。这样,就不可避免地加重了程序员的负担。与此相同,在程序调试时,一旦程序的运行出了问题,就很难发现。

优点

1、因为用汇编语言设计的程序最终被转换成机器指令,故能够保持机器语言的一致性,直接、简捷,并能像机器指令一样访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等。使用汇编语言,可以访问所有能够被访问的软、硬件资源。

2、目标代码简短,占用内存少,执行速度快,是高效的程序设计语言,经常与高级语言配合使用,以改善程序的执行速度和效率,弥补高级语言在硬件控制方面的不足,应用十分广泛。

缺点

1、汇编语言是面向机器的,处于整个计算机语言层次结构的底层,故被视为一种低级语言,通常是为特定的计算机或系列计算机专门设计的。不同的处理器有不同的汇编语言语法和编译器,编译的程序无法在不同的处理器上执行,缺乏可移植性;

2、难于从汇编语言代码上理解程序设计意图,可维护性差,即使是完成简单的工作也需要大量的汇编语言代码,很容易产生bug,难于调试;

3、使用汇编语言必须对某种处理器非常了解,而且只能针对特定的体系结构和处理器进行优化,开发效率很低,周期长且单调。

问题十:微程序和汇编语言的区别是什么。 5分 微代码和汇编都是低级语言,但是微代码比汇编更底层。微代码和汇编都和硬件有着紧密的联系,但是对于同一产品系列的不同代产品来说,汇编可以完全相同,微代码可能有着巨大的区别,因为微代码是完全依赖于芯片内部的硬件连接。

对于同样一句C语言,在不同的处理器上会生成不同的汇编语言。每一条汇编语言的执行时间也许是一个或者两个时钟周期,甚至更多。微代码和汇编的关系,就像C 与汇编的关系,也就是说一条汇编也许会生成一条或多条微代码。所谓微代码,或者微指令,是处理器内部最小的 *** 作原语,控制着诸如门电路(gates)开关等专门动作,和组成一条指令的微 *** 作的序列。例如,对于一个加法ADD的简单动作,微代码可以决定接受哪两个寄存器或总线为输入,输出到什么总线或者寄存器里,标志寄存器要保存还是丢弃,根据条件进行跳转或者直接执行下一条微代码。一个内部只有8位宽的数据总线完全可以支持32位整数的汇编 *** 作,就是因为有微代码。

微代码原来只是用来开发计算机的逻辑控制。古老的CPU往往都是“硬连线”,每个机器指令(加法,移动)都是由电路实现,虽然有着高性能的优点,但随着指令复杂度的增长,也带来了研发和DEBUG的困难,以及电路的复杂性。微代码的出现让CPU的设计者可以通过写一个微程序的方式来实现一条机器指令,而不是设计电路来实现它。在将来的开发设计过程中,微代码可以很容易地改变,硬件电路却不可更改,否则带来的将是巨大的商业损失。这种灵活的CPU设计导致了今天日益复杂的指令集。

如果你指的“计算机”是指写个小的processor的话,基本就是用verilog写不同的module然后拼在一起,这样的小的“processor”可以执行很多不同的instruction。蛮复杂。不建议自学。

是否可以解决您的问题?

问题一:指令与程序的概念是什么? 指令是指能够控制机器工作的命令

程序是指能够完成某些工作的的指令集

问题二:计算机中的指令和程序有什么区别? 指令的标准定义是告诉计算机从事某一特殊运算的代码 我们经常用的windows上的指令就是运行里面的一些命令 程序是为实现特定目标或解决特定问题而用计算机语言编写的命令序列的 。 程序包括指令 指令构成程序~

问题三:指令和程序有什么区别 什么是指令:

计算机是“聪明傻瓜”,不告诉它怎样干它什么也不会干,告诉它怎样干它会干得很好。这就要使计算机明白一个个的命令,它就会按照你的命令去干。这种给计算机的命令,又叫指令。一个指令,也就是一个 *** 作。

指令由 *** 作码和 *** 作数构成,分别表示何种 *** 作和存储地址,例如:指令0011111000000111的意思是,向累加器加7,前8位数字表示向累加器送数,后8位数表示所送的数是十进制数7。

而程序则是:

程序是可以连续执行,并能够完成一定任务的一条条指令的 。 它是人与机器之间进行交流的语言。程序主要是原代码文件,抚了程序才有软件。如我们常用的COPY,FORMAT等命令

问题四:解释指令,程序,软件的概念,三者之间有什么关系 程序员使用(C,C++)等语言编写代码,得到能够执行一定功能的程序,各种功能的程序协作,组合成一个完成的系统。而程序员的这种行为叫做编程。

问题五:解释指令、程序与软件的概念,三者之间有什么关系 指令:告诉计算机从事某一特殊运算的代码。如:数据传送指令、算术运算指令、位运算指令、程序流程控制指令、串 *** 作指令、处理器控制指令。

程序:是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可以被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。

软件:是一系列按照特定顺序组织的计算机数据和指令的 。一般来讲软件被划分为系统软件、应用软件和介于这两者之间的中间件。软件并不只是包括可以在计算机(这里的计算机是指广义的计算机)上运行的电脑程序,与这些电脑程序相关的文档一般也被认为是软件的一部分。简单的说软件就是程序加文档的 体。

可以这样理解:软件包含程序,程序包含指令。

问题六:程序是什么意思 指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。

计算机的程序是有一系列的机器指令组成的,而指令就是要计算机执行某种 *** 作的命令。

程序=算法+数据结构+程序设计方法+语言工具和环境

从计算机组成的层次结构来说,计算机的指令分:

微指令:是微程序级的命令,它属于硬件。

宏指令:是由若干条机器指令组成的软件指令,它属于软件。

机器指令:介于微指令和宏指令之间,通常简称为指令,每一条指令可以完成一个独立的算术运算或逻辑运算 *** 作。

计算机程序就是指 电脑可以识别运行的指令

问题七:机算机中、程序和指令和数据有什么不一样?分别是什么内容?说清楚点 计算机程序或者软件程序(通常简称程序)是指一组指示计算机或其他具有信息处理能力装置每一步动作的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。打个比方,一个程序就像一个用汉语(程序设计语言)写下的红烧肉菜谱(程序),用于指导懂汉语的人(体系结构)来做这个菜。 通常,计算机程序要经过编译和链接而成为一种人们不易看清而计算机可解读的格式,然后运行。未经编译就可运行的程序通常称之为脚本程序

程序的运行

为了一个程序运行,计算机加载程序代码,可能还要加载数据,从而初始化成一个开始状态,然后调用某种启动机制。在最低层上,这些是由一个引导序列开始的。

在大多数计算机中, *** 作系统例如Windows等,加载并且执行很多程序。在这种情况下,一个计算机程序是指一个单独的可执行的映射,而不是当前在这个计算机上运行的全部程序。

冯诺依曼体系结构

在一台基于最常见的冯诺依曼体系结构(又称Harvard Architecture)的计算机上,程序从某种外部设备,通常是硬盘,被加载到计算机之内。 如果计算机选择冯诺依曼体系结构,那么程序就被加载入内存。 指令序列顺序执行,直到一条跳转或转移指令被执行,或者一个中断出现。所有这些指令都会改变指令寄存器的内容。

基于这种体系计算机如果没有程序的支持将无法工作。一个计算机程序是一系列指令的 。

程序里的指令都是基于机器语言;程序通常首先用一种计算机程序设计语言编写,然后用编译程序或者解释执行程序翻译成机器语言。 有时,也可以用

程序和数据

程序已经被定义了。如何定义数据呢?数据可以被定义为被程序处理的信息。当我们考虑到整个计算机系统时,有时程序和数据的区别就不是那么明显了。中央处理器有时有一组微指令控制硬件,数据可以是一个有待执行的程序(参见脚本编程语言),程序可以编写成去编写其它的程序;所有这些例子都使程序和数据的比较成为一种视角的选择。有人甚至断言程序和数据没有区别。

编写一个程序去生成另外一个程序的过程被称之为原编程(Metaprogramming)。它可以被应用于让程序根据给定数据生成代码。单一一个程序可能不足以表示给定数据的所有方面。让一个程序去分析这个数据并生成新的程序去处理数据所有的方面可能会容易一些。Lisp就是一例支持这种编程模式的程序语言。

在神经网络里储存的权重是一种数据。正是这些权重数据,跟网路的拓扑结构一起,定义了网络的行为。人们通常很难界定这些数据到底表示什么或者它们是否可以由程序来代替。这个例子以及跟人工智能相关的其它一些问题进一步考验程序和数据的区别。

算法

算法指解决某个问题的严格方法,通常还需辅以某种程度上的运行性能分析。算法可以是纯理论的,也可以由一个计算机程序实现。理论算法通常根据复杂性分为不同类别;实现的算法通常经过颇析(Profiling)以测试其性能。请注意虽然一个算法在理论上有效可行,但是一个糟糕的实现仍会浪费宝贵的计算机资源。(更详细信息,参见算法信息论,Algorithmic Information Theory)

开发

编写程序是以下步骤的一个往复过程:编写新的源代码,测试、分析和提高新编写的代码以找出语法和语义错误。从事这种工作的人叫做程序设计员。由于计算机的飞速发展,编程的要求和种类也日趋多样,由此产生了不同种类的程序设计员,每一种都有更细致的分工和任务。软件工程师和系统分析员就是两个例子。现在,编程的长时间过程被称之为“软件开发”或者软件工程。后者也由于这一学科的日益成熟而逐渐流行。

因>>

问题八:什么是指令,程序,软件。麻烦高手举例说明! 指令是指示计算机执行某种 *** 作的命令,它由一串二进制数码组成,告诉计算机从梗某一特殊运算的代码 数据传送指令、算术运算指令、位运算指令、程序流程控制指令、串 *** 作指令、处理器控制指令。

程序(program)是为实现特定目标或解决特定问题而用计算机语言编写的命令序列(指令)的 。

软件(英文:Software)是一系列按照特定顺序组织的计算机数据和指令的 ,程序设计的最终结果是软件。

都是教学计算机中基本指令。

微程序控制器实验、实验目的和要求(必填),通过看懂教学计算机中已经设计好并正常运行的数条基本指令(例如,ADD、MVRR、OUT、MVRD、R、RET等指令)的功能、格式和执行流程,然后自己设计几条指令的功能、格式和执行流程,并在教学计算机上实现、调试正确。其最终要达到的目的是:1、深入理解计算机微程序控制器的功能、组成知识。2、深入地学习计算机各类典型指令的执行流程。3、对指令格式、寻址方式、指令系统、指令分类等建立具体的总体概念。4、学习微程序控制器的设计过程和相关技术。

是控制器部件重要的教学内容,这一设计要依据指令的格式和功能、控制器部件的组成、被控制对象运行方式以及它们彼此之间的链接关系等多个方面的实际情况共同决定,就是说,它解决的是信息,随着时间在这些部件之间的流动关系,与指令系统、计算机整机和它的各个部件都有关系,因此也就比较难以全面理解与掌握。

微程序控制器和硬连线控制器在组成和运行原理方面相同之处如下:

1、基本功能都是提供计算机各个部件协同运行所需要的控制信号;

2、组成部分都有程序计数器PC,指令寄存器IR;

3、都分成几个执行步骤完成每一条指令的具体功能。

微程序控制器和硬连线控制器都是计算机中的控制器(即CPU的一部分),其组成和运行原理有一些相同之处,包括:

1、存储器件:两种控制器中都使用存储器件来存储指令和数据。这些存储器件可以是ROM、RAM等。

2、指令执行流程:两种控制器都按照指令执行流程来完成各种 *** 作。指令执行流程一般包括取指令、译码、执行等过程,这些过程均由控制器负责。

3、数据通路:两种控制器都与数据通路相连接,通过数据通路实现数据的输入、输出和处理。

4、程序计数器:两种控制器中都有一个程序计数器,用于记录下一条要执行的指令地址。

5、控制单元:两种控制器都有一个控制单元,用于控制整个计算机系统的运行。

总之,微程序控制器和硬连线控制器在组成和运行原理方面存在着一定的相同之处,这些共性是计算机控制器的基本特点。但两者在具体实现上还存在较大的差异,尤其是微程序控制器采用了微代码的方式来实现指令,而硬连线控制器则是直接根据电路设计来执行指令。

微程序控制器的特点

1、可编程性:微程序控制器使用微代码(microcode)来实现指令 *** 作,这使得其可以动态地编写和修改微代码,从而支持不同的指令集和更高级别的功能。

2、灵活性:由于微程序控制器采用了微代码的方式来实现指令,因此可以在不改变硬件结构的情况下支持不同的指令集。这种灵活性使得微程序控制器适用于复杂的应用场景。

3、易于调试和维护:与硬连线控制器相比,微程序控制器的指令编写和修改更加方便,同时也更容易调试和维护。这是由于微程序控制器采用了软件控制逻辑的方式实现指令 *** 作。

4、支持高级别的功能:由于微程序控制器可以在运行时动态地修改控制指令,因此可以支持更高级别的功能,例如流水线、超标量处理等技术,从而提高计算机的性能。

5、存储器要求高:微程序控制器需要较多的存储器以存储微代码,这可能导致成本上升和速度下降。总之,微程序控制器具有可编程性、灵活性、易于调试和维护、支持高级别的功能等特点,这些特点使得微程序控制器成为一种重要的计算机控制器。

以上就是关于谁有计算机组成原理期末考试试题啊,帮帮忙吧,谢谢!全部的内容,包括:谁有计算机组成原理期末考试试题啊,帮帮忙吧,谢谢!、什么是 *** 作系统、汇编语言程序是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9613068.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存