枫KGV6 2017-12-03 16:00 采纳率: 0%
浏览 1919
已结题

有关计算机的几个基础关键的问题..困扰很久了..麻烦专业点的大神给个通俗准确的解释,感激不尽!

①内存的数据读取到该内存另一块地方上会不会经过cpu
②芯片的作用主要是计算吗?硬盘,内存,显卡,网卡,声卡这些部件里都有芯片?数据对它们进行传入传出时都要经过芯片这个数据处理器?也就是说,比如cpu处理好的数据结果送到硬盘时,数据要先经过硬盘上的一块处理数据的芯片?cpu处理好的数据结果送到网卡声卡这些时,也要先经过它们上面的一块处理数据的芯片?这块芯片决定了它们对传来的数据的处理能力?
③最后一个问题:
既然c语言速度比c#快那么多,那么对于一个耗时间的程序相同情况下岂不是c#要花很多的时间,比如说同一个算法c连续让cpu算了一分钟,那岂不是c#要算几十分钟才能算完?

(请稍微专业点的大神回答啊谢谢!)

  • 写回答

21条回答 默认 最新

  • threenewbee 2017-12-03 16:10
    关注

    ①内存的数据读取到该内存另一块地方上会不会经过cpu
    会。
    ②芯片的作用主要是计算吗?硬盘,内存,显卡,网卡,声卡这些部件里都有芯片?数据对它们进行传入传出时都要经过芯片这个数据处理器?也就是说,比如cpu处理好的数据结果送到硬盘时,数据要先经过硬盘上的一块处理数据的芯片?cpu处理好的数据结果送到网卡声卡这些时,也要先经过它们上面的一块处理数据的芯片?这块芯片决定了它们对传来的数据的处理能力?
    所谓“计算”一般说的是具有通用计算的能力(专业术语叫图灵完备,一个图灵完备的机器,理论上可以完成任何别的计算机能做的事情)。
    目前不但你说的这些都包含可以通用计算的芯片,就是键盘、鼠标甚至硬盘盒、你的汽车钥匙都有通用的cpu。通用的cpu廉价,而且易于通过重新编程扩展各种功能。所以现在的厂商都愿意这么做。但是,这并不意味着,“硬盘,内存,显卡,网卡,声卡”必须具有通用计算的能力。在80年代以前,它们可能是不具备的。
    ③最后一个问题:
    既然c语言速度比c#快那么多,那么对于一个耗时间的程序相同情况下岂不是c#要花很多的时间,比如说同一个算法c连续让cpu算了一分钟,那岂不是c#要算几十分钟才能算完?
    你对C语言的效率和C#的效率的认识是完全不对的。在极端情况下,C#甚至可以比C语言写出更快的程序。但是大多数情况下,两者的效率相仿。

    评论

报告相同问题?

悬赏问题

  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序