写给家人的计算机和编程简介

作为一个码农,有时候会遇到非专业的亲戚朋友的问题:到底计算机是怎么运转的?程序员编程到底在做什么?诸如此类的科普问题,往往也不是一两句话能说明白的。今天花了点时间总结了一下,尽量深入浅出地解释这个问题。

计算机的组成是怎样的呢?简单的说就是拼积木,由特别简单特别小的几种乐高积木块拼成小零件,再拼成物品人物,再拼成房屋街景,聚少成多聚沙成塔。


    1. 二进制是表示数字的一种方法,只有0和1两个数字,可以和我们常用的十进制相互转换。比如二进制的110意思是十进制的6
    2. 数字电路:电路可以分成有电和没电两个状态正好用来表示二进制数字的0和1,多个这样的电路组合在一起就可以表示更大的数比如:110。这样用电路来表示和操作二进制数字,我们就得到了数字电路。
    3. 通过二极管和三极管组成的数字电路我们可以拼出进行“与,或,非”这几种基础运算,通过这几种基础运算我们可以拼出更多数学功能的数字电路,比如加法器,乘法器,以至于乘方开方求余数等等
    4. 如果每个运算都靠人手动操作,就像会计使用老式按键的计算器计算核对纸质的账本,仍然很慢很容易出错。所以我们同时也制造了自动操作计算电路的电路,就是控制器。
    5. 我们用磁盘上某个点有没有磁化来表示二进制数字0/1就得到了可以存储数据的磁盘。同样用电路也可以做存储工作,就是我们用的内存和U盘还有固态硬盘。
    6. 之后我们又制造了各种输入设备比如键盘鼠标摄像头麦克风传感器等等来收集数据。还有各种输出设备来输出运算结果甚至直接操纵机器,比如显示器,音响,温控器,智能开关,智能家电,数控机床,无人驾驶汽车...
    7. 有了上述组成部分“运算器,控制器,存储器,输入输出设备”就组成了一个完整的计算机硬件系统,这就是传说中的冯-诺依曼结构,小至手机,智能手环大到智能汽车,飞机以至于国家超算中心里的超级计算机,都是这样拼出来的。
    8. 很多时候单一的计算机功能有限,于是人们把计算机用网线连接起来,让它们可以互相通信互相协作,这就组成了互联网。至于一台和多台计算机联网有多大差别,想想一部没流量没wifi的智能手机就知道了
    9. 以上所说的各种电路和设备都是直接看得见摸得着的,也不能随意创造复制删除的实在物品,所以叫硬件
    10. 但是计算机所计算的存储的网络传输的都是数据,是抽象的可以方便的创造复制删除,这些就都属于软件的范畴,比如操作系统(OS),应用软件(APP)
    11. 软件的构成也是堆积木的过程,刚刚说了我们有计算电路也有控制电路,那么控制电路怎样自动控制计算的呢?我们仍然使用二进制数据来表示控制操作的命令,比如110表示做加法,111表示做乘法,101表示把结果存起来等等,这些指令叫机器码,这样我们就可以用这些指令拼出最简单的程序,而且是用计算机能够兼容的二进制数据组成的控制程序,这样可以用数据自动控制数据而不是人来直接控制。这就是程序,也就是软件。
    12. 计算机控制器识别和执行机器码是非常直接的,但对我们编写机器码的人来说这一串串二进制数可就不那么直观方便了,所以就有了一种用单词缩写来表示机器码的形式,对于编程的人来说相对容易理解和书写,比如加法是ADD移动数据是MOV,这就是传说中的汇编语言。
    13. 对于人来说,其实汇编语言还是相当的晦涩难懂,所以贝尔实验室的Dennis MacAlistair Ritchie发明了C语言,容易写,又容易看懂。这下,人们可以写出功能更丰富,更复杂的程序,使得编写软件成为一个职业,也使得计算机的应用越来越广泛。想象一下,如果苹果手机不装任何APP,你愿意用吗?那和板砖有什么区别😂
    14. 在此基础上,人们有开发了各种高级的编程语言和编程工具比如c++, JAVA, JavaScript等等,使用这些语言和工具来编写程序的人,就叫程序员或者软件工程师,或者俗称的码农
    15. 最后,硬件配合软件就组成了我们身边各种各样丰富多彩功能强大的智能设备。


现代人已经习惯了有互联网,有手机的日子,习惯了新科技带来的各种方便快捷。而这一切都是从最简单的逻辑电路和最简单的逻辑运算开始的,像搭积木一样,一点一点拼出来,由简单到复杂,由小到大
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值