写点什么

编程简单科普系列 - 什么是编程 (1)

作者:迷彩
  • 2022 年 6 月 08 日
  • 本文字数:2164 字

    阅读完需:约 7 分钟

什么是编程呢


编程是编定程序的中文简称,通俗点说,就是让计算机代码解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。



广义上来说,编程也不仅仅是指关于计算机的范畴,现在通常也指可以 diy 的东西,可以通过自己想法进行自定义的东西。当然我们这里所说的是指计算机编程.


因为计算机是不能直接听懂我们人说话的,没办法直接沟通,所以我们需要通过编程语言来跟计算机进行沟通,通过编程语言把我们想表达的转化为计算机能听懂的,在这里编程语言就相当一个翻译(比如,我们不会英文,准备要和一说英文的外国人谈生意,这时候就需要找一个英文翻译,替我们把想要表达的中文翻译成对方听得懂的英文。)其实严谨点这个比喻说也不准确,因为编程语言一般是需要通过编译器或者解释器编译解释之后,才能为计算机所识别. 每个计算机编程语言,都有自己的编译器或者解释器,这里的编译器才是真正的翻译官,但是我们一般开发直接面对的是编程语言,除非需要对编译器或者解释器进行优化,所以为了大家能明白这里就把编程语言类比成翻译官,说白了,编程语言,跟我们所学的中英文等其他语言是一样,只不过编程语言是我们人类和计算机沟通的语言



计算机语言,有上千种,很多语言的出现大多都是为了解决作者当时所遇到特定的问题,我们常见的编程语言有 C/C++,JAVA,PYTHON,GO,JS,PHP,C#……等等


我们编写好程序,然后编译器会把我们所写的程序转化成一系列,计算机能识别的能读懂的指令集,然后再转化为二进制,计算最底层就是二进制,我们通常用的是 10 进制,0-9 的数字来表示逢十进一,二进制只有 1 和 0 逢二进一,对应我们电路的开和关,1 代表开,0 代表关。了解数字电路的同学应该更容易理解

在顶层,程序员编写出来的都是源代码。源代码可以使用各种高级语言写成,例如 c/c++ c# java python 等等;也可以使用对应平台的低级语言写成,例如汇编。想必你已经了解其中的过程了。

到这一步为止,距离最终机器可以执行的指令还有一大步要走。

首先要面临的一个问题是:源代码都是以人类语言写成的。即便是能够和机器指令一对一翻译的汇编代码,依然是人类语言。计算机无法理解其中的含义,所以不可能执行。

所以我们需要将人类语言翻译为计算机语言。计算机能听懂的语言,就叫做机器语言,简称机器码。

电脑是这么执行编程语言的: https://www.zhihu.com/question/29227521


随着现代科技的发展,人们的生活已经离不开数字电路。计算机逻辑电路是指数字电路中最基本的逻辑元件,它能按照一定的条件去控制信号的通过或不通过。基本逻辑关系为“与”、“或”、“非”三种。


电脑的基层部件是由集成电路组成的,这些集成电路可以看成是一个个门电路组成当计算机工作的时候,电路通电工作,于是每个输出端就有了电压。电压的高低通过模数转换即转换成了二进制:高电平是由 1 表示,低电平由 0 表示。也就是说将模拟电路转换成为数字电路。这里的高电平与低电平可以人为确定,一般地,2.5 伏以下即为低电平,3.2 伏以上为高电平.所以编程语言最后转化为电信号,计算机处理数据的时候,展示给我们的是数字的变化,这背后实质是各种元器件之间的电信号的变化


计算机为什么选择二进制:

(1)易于物理实现    

因为具有两种稳定状态的物理原件是很多的,如门电路的导通与截止,电压的高与底,而他们恰好对应表示 1 和 0 两个字符。假如采用十进制,要制造具有 10 种稳定状态的物理电路,那是非常困难的。

(2)二进制数运算简单    

数学推导证明,对 R 进制算术的求和、求积规则各有 R(R+1)/2 中。如采用十进制就有 55 种求和与求积的运算规则;而二进制仅各有三种,因而简化了运算器等物理器件的设计。

(3)机器可靠性高    

由于电压的高低,电流的有无等都是一种质的变化,两种状态分明。所以基 2 码的传递抗干扰能力强,鉴别信息的可靠性高。

(4)通用性强    

基 2 码不仅成功地运用于数值信息编码(二进制),而且适用于各种非数值信息的数字化编码。特别是仅有的两个符号 0 和 1 恰好与逻辑命题的两个值“真”和“假”相对应,从而为计算机实现逻辑运算和逻辑判断提供了方便。




电信号传输的概念 

从信息编码的角度来说,金、鼓、灯塔、烽火台类似电报的二进制编码。电报传输的信号有两种,一种是短促的点信号(dot 信号),一种是长一点的划信号(dash 信号)。我们把“点”当成“1”,把“划”当成“0”。这样一来,我们的电报信号就是另一种特殊的二进制编码了。电影里最常见的电报信号是“SOS”,这个信号表示出来就是 “点点点划划划点点点”


比起灯塔和烽火台这样的设备,电报信号有两个明显的优势。第一,信号的传输距离迅速增加。因为电报本质上是通过电信号来进行传播的,所以从输入信号到输出信号基本上没有延时。第二,输入信号的速度加快了很多。电报机只有一个按钮,按下就是输入信号,按的时间短一点,就是发出了一个“点”信号;按的时间长一些,就是一个“划”信号。只要一个手指,就能快速发送电报。而且,制造一台电报机也非常容易。电报机本质上就是一个“蜂鸣器 + 长长的电线 + 按钮开关”。蜂鸣器装在接收方手里,开关留在发送方手里。双方用长长的电线连在一起。当按钮开关按下的时候,电线的电路接通了,蜂鸣器就会响。短促地按下,就是一个短促的点信号;按的时间稍微长一些,就是一个稍长的划信号。


本文完

以上纯属个人观点,不喜勿喷


发布于: 刚刚阅读数: 8
用户头像

迷彩

关注

我的工作就是常年写bug 2020.06.18 加入

菜鸟~公众号:互联网有啥事

评论

发布
暂无评论
编程简单科普系列-什么是编程(1)_编程_迷彩_InfoQ写作社区