• 软件是如何控制硬件的?


    软件的本质是代码和数据,代码和数据最终都是以二进制的形式存储,二进制就是01011101101001010这种数字串,为什么二进制串就能控制硬件呢?

    看了知乎的一个答案我也有了自己的一点想法。

    其实一直就没有二进制这种东西,机器也不知道二进制这种东西,它也识别不了,机器只能“识别”电压的高低,高电压的时候某个开关开了或者关了,低电压的时候另外一个开关开了或者关了,这就导致某个灯亮了,某个灯灭了,把电脑的显示器想象为很多个LED灯,最终呈现出来的效果可能就是屏幕上出现了一个字,一个动画。我们按一下键盘或者点击一下鼠标,实际上是给机器发出了一串电压信号。硬盘里面存储的一部电影,存储的其实不是二进制,而是电压信号,因为内存里面有锁存器这种东西,意思貌似是可以让某个存储单元固定在某个电压值。总之,我们输入的是电压,机器处理的也是电压,输出的也是电压,没有二进制的事情。

    那为什么很多人都说机器能识别二进制呢? 我个人觉得二进制这种东西是一种理论,用来认识机器理解机器提出的一种理论,这就像是我们用科学来解释世界一样。

    你说你今天编写了一个程序,并把它保存在硬盘中,其实你是把一堆电压值保存在了硬盘中,运行的时候,其实是把硬盘中的那一堆电压值拷贝到内存中,然后内存中就有了一堆电压值,

    CPU读取到了一堆电压值,然后解码这堆电压值(即:某某电压值该干什么事情),输出结果也是一堆电压值,显示器获得了这群电压值,然后显示器根据这群电压值改变LED灯的状态,如果你就看到效果了。

  • 相关阅读:
    perl linux 编译成可执行程序
    MQSeries::Message 面向对象接口的MQSeries messages
    数据化管理第一步,你真的会做报表吗?
    数据化管理第一步,你真的会做报表吗?
    aix ipcs 官方解释
    使用jquery.qrcode生成二维码及常见问题解决方案
    案例分享|某医药集团的BI建设案例
    aix ipcs OxFFFFFFFF
    案例分享|某医药集团的BI建设案例
    地图应用之 :获取当前位置的经纬度
  • 原文地址:https://www.cnblogs.com/yfish/p/7928137.html
Copyright © 2020-2023  润新知