软件如何控制硬件
笔者并未学过数电模电,这个博客只为记录笔者此时的简单看法,欢迎指正。——2023.3.25
从笔者对计算机有初步了解的时候,就对硬件电路产生了好奇,为何你的计算机可以控制电压电流,底层的物理结构是什么?以最简单的小灯泡电路为例,一个电源,一个开关,一个小电珠,开关闭合前小电珠不亮,闭合后才亮,而电路板上不可能设计一个这么大的开关来控制,且这种控制需要机械力,需要人为的打开关闭,这在电路板上是不可能的,那实际是怎么实现的。
讲到这,我们不妨看看什么是软件,软件软在它不是个实体。从最早的图灵机开始,其实就已经有了软件的雏形了,即纸条上的信息,它告诉计算机将什么数字和什么数字进行怎样的计算,也就是说,软件其实是信息的载体。从现在来看,我们所写出的代码都是高级语言,它经过编译形成机器语言,即1和0,是1和0的有序数列,它代表着高低电平。编译完的程序我们通常需要烧录到程序存储器中。程序存储器的存储介质主要是许多个微小的电容,通过带不带电来表示1和0,烧录过程简单的就是给电容充放电,这些电容控制着CPU内部的“开关”,许多个“开关”的开闭状态控制着电路的拓扑结构,形成1+1>2的效果,从而实现对相应部分的输入输出。而“开关”其实就是三极管,通过外加电流控制着电流导通。