如果你有需求找人做,或者你有技能给别人做,可以上猪八戒网工业制造,当服务商或者是咨询服务商,更全面更专业
通俗来讲,软件是程序员对计算机系统编写的程序,是计算机系统的上层。硬件,是复杂的电路系统,是计算机系统的底层。软件工程师工作与编程有关,硬件工程师工作与电路设计、编码等有关。
历史上计算机的雏形早于软件几个世纪就出现了。
而电子计算机的问世离不开苏格兰数学家布尔和现代信息学之父美国人香农。布尔以其超凡的智慧发明了他的布尔代数或者说布尔逻辑,使代数脱离了数字的概念而变得更加抽象,布尔代数中操作数不是数字,而是集(类),一个类仅仅代表一组事物,也就是后来熟知的集合。古希腊人认为,逻辑是追寻真理的过程中用于分析语言的一种手段,因此它被认为是一种哲学。所以布尔不仅使用数学的方法使逻辑从哲学中脱离出来,还为电子计算机的问世奠定了基础。 只可惜,在19世纪没有人把布尔代数中的与、或和电路中的串联、并联开关联系起来,没有人能意识到布尔代数可以直接由电路实现。直到20世纪30年代才被发现,主要贡献人是现代信息学之父香农,香农在他著名的于1938年在麻省理工所写的硕士论文《A Symbolic Analysis of Relay and Switching Circuits》中阐述了这个问题。
现代电子计算机所完成的加法运算减法运算等都是用逻辑器件所组成的电路完成的。计算机是运用二进制数进行工作,二进制数0和1在逻辑器件中的代表断路和通路。
软件的本质是对计算机系统(硬件)的编程,软件一般都用高级语言进行编程,程序员编写的程序由IDE编译、链接后用电烧录到计算机系统的程序寄存器中,不过存放在程序寄存器中的是机器码,一大堆01010111代码。我这里拿单片机(微控制器)的工作原理举例来说明之后是怎么工作的。单片机执行指令时,首先从程序存储器中读指令,送指令寄存器保存,后送指令译码器译码,译码结果送定时控制逻辑电路,由定时器控制逻辑产生各种定时信号和控制信号,再送到单片机的各个部件去进行相应操作。执行程序就是不断重复这一过程。
总之,我觉得计算机还是挺复杂的。