软件 控制 硬件

 

 


软件可以发送命令   让cpu的某一引脚   发出高低信号   从而控制硬件

 

 

我也曾遇到过这样的问题,困惑了好长时间。每每到网上看, 都说的不是我想要的问题,或者说是组成原理书上有讲呀什么的。现在我明白了, 是按自己的想法明白 ,希望像我

困惑过的正在困惑的能在这里得到答案,对你有所帮助

软件如何控制硬件呢??(以下仅是我个人理解, 不保证正确, 如果错的希望能得到您的指点。。先谢谢)

大家都知道。没有软件的硬件就是一堆废铁或“砂子”。您也知道cpu中有个叫做译码器的东东吧,您也知道我们写的程序要经过编译呀, 汇编呀,连接呀。最后生成可以被硬件

执行的二进制。可是问题来了,硬件能认识个啥二进制。这里也许是你不懂的地方。其实解释的关键也就在这里了。高低电压。脉冲的有无控制硬件您能够接受吧,而我们写的程

序(软件)其实都是以高低电压,脉冲的有无存储在磁盘上。或者以有无反射的形式存在光盘上。所谓的机器可直接执行的代码, 也就是二进制,译码器能理解。他能理解。cpu

就能理解。cpu按照硬件设置和硬件特性,选择switch(也就是让哪一条导线是通路),以达到控制硬件。

实际上计算机把相当复杂的问题最终都会转化成加法(ALU)来实现,(太神奇了,我还理解不了。但我知 道,呵呵,这样有助于理解。

 

 

 

软件在工作的时候也是实体,软件的实质就是电流信号,用电压的高低代表不同是信息,用这些电流信号去控制逻辑电路的通断,靠逻辑电路的通断来控制硬件的工作。
说到底软件就是起到一个开关信号的作用,开关要工作,必需保证硬件是加电的,没有接通电源的硬件是无法用软件来控制的。就好比没有插上电源的台灯,你怎么按开关都是不

会亮的。
任何软件在运行前都要有一个将其转化为电流信号的实体化过程,你写在纸上的软件代码是永远也不能控制硬件的。早期电脑用人工接线输入程序,相当于用人体的力量将软件代

码实体化为电信号;现在我们用的软盘、硬盘是通过磁头将程序代码转化为电信号,光盘需要通过光头将程序代码转化为电信号等等。

这个问题看似简单,其实涉及到一些很底层的内容和原理。对于一般计算机爱好者来讲,又没有办法说明白,原因就是我们从来没有考虑过电路在物理上的实现。
计算机软件说到底,不过就是一些指导电子元件工作的指令序列,那么你一定又会问电子元件为什么会按这些序列工作呢?指令序列的在电路中的实质就是一些有规律且有一定意

义的电脉冲,电脉冲控制电子元件的各种状态。工作过程非常复杂。最简单最基本的就是几个逻辑门电路的实现:比如“或”电路,“与”电路等等。通过将这些逻辑门电路的组

合和协同,就能实现电脑整体上的运算和处理能力。因为这是十几个数量级的基础电路的有机集合的对外的体现,如奔腾系列CPU集成了上亿个半导体元件,要想把各个元件的功能

彻底认知,是非常困难的。可以把它们比作每个人的活动合在一起就构成了社会.

计算机是数字电路,数字电路是靠1,0来控制电路的.起到电流还有脉冲作用.像你键盘上敲个周字一样.同是由一大一串的0001111111111100.来产生脉冲电流对硬件发出指令的.CPU

就是运算这些数据.然后发出机器语言指挥其它硬件工作的.

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值