首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计算机体系结构与设计

计算机体系结构与设计
EN

Stack Overflow用户
提问于 2019-09-25 09:18:34
回答 2查看 444关注 0票数 0

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

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

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-10-04 21:41:03

基本上,我理解的是,大多数计算机有三种主要的计算方式。

1.前缀例如+ab

2.Infix,例如a+b

3.后缀(如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将是最终答案,并被发送到打印机打印。

显示执行路径的图像

票数 0
EN

Stack Overflow用户

发布于 2019-10-23 19:35:17

  1. 第一步,您的系统将从字符设备(键盘)请求数据,并接收数据,直到您获得终止字符,即\n 0x0a。您将重复此操作数,直到得到必要的操作数为止。字符设备输出将保存到进程的内存空间(如果系统使用DMA,此时不太可能在缓存中)
  2. 操作数使用ALU计算,并保存到内存中。结果将在缓存中,因为内存是由CPU直接访问的。
  3. 这个问题的一个非常关键的部分是打印机的双向I/O。结果将发送给打印机读取。然后,打印机可以报告打印操作的状态,以通过从打印机到系统的接口告诉系统操作是否已经完成。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58095129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档