计算机架构与设计

时间:2019-09-25 09:18:34

标签: kernel

如果ax + b * c / g是从键盘输入的;请使用您在计算机体系结构设计方面的知识,跟踪从键盘到最终输出到使用双向I / O接口的打印机的执行路径。

有人可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

所以我基本上了解的是,大多数计算机都有3种主要的计算方式。

1.Prefix例如+ ab

2。中缀,例如a + b

3.Postfix,例如ab +

首先,来自键盘的输入(ax + b * c / g)被发送到RAM。它从RAM穿过缓存到CPU。

CPU包含控制单元(CU),算术逻辑单元(ALU)以及内部存储器和寄存器。 ALU基本上在CPU中处理计算。从而将计算结果发送到ALU。

因此,假设计算机使用后缀表示法进行计算:

使用存储寄存器,它开始如下计算:

a)ax + b将计算为axb + = X1。先前的操作数被清除并由答案(X1)代替。计算连续如下:

b)X1 * C将计算为X1C * = X2

c)X2 / g将计算为X2g / = X3。

X3将是最终答案,并发送到打印机进行打印。

An image showing the path of execution

答案 1 :(得分:0)

  1. 第一步是系统从字符设备(键盘)请求数据并接收数据,直到获得终止字符,即\ n 0x0a。您将重复此操作,直到拥有必要的操作数为止。字符设备的输出将保存到进程的内存空间中(如果系统使用DMA,则此时不可能存储在缓存中)
  2. 使用ALU计算操作数并将其保存到内存中。结果将在缓存中,因为CPU直接访问了内存。
  3. 这个问题的一个非常关键的部分是打印机的双向I / O。结果将发送给打印机读取。然后,打印机可以通过从打印机到系统的接口报告打印操作的状态,以告知系统该操作是否已完成。
相关问题