提要
C词汇红遍亚洲地区,此种奇妙的“词汇”,究竟是甚么矮小上的控制系统?下期推文,小编将为你出炉C词汇的双重奥妙。
Chalancon图(ง •_•)ง↓
嘿,酷TNUMBERZG?
“This chart shows about 150 of the thousands of programming languages that have been invented. Some are general-purpose, while others are designed for particular kinds of application. Few new languages are truly new. The arrows show how newer ones might have been influenced by older ones.”
这是座落在矽谷Mountain View的计算机控制系统博物馆中的另一面墙,下面刻画出了约150种对C词汇发展史有著关键象征意义的流程以它间的亲密关系。
所以……
听出来至极矮小上的C词汇,
究竟是甚么?
PART I “C词汇”与“语义”
C词汇,从其功能上来看和语义也没甚么区别。唯一的区别在于语义是人与人间交流的方式,C词汇是coder与计算机控制系统之间交流的方式。
语义具有著语族、语系等结构,计算机控制系统词汇也一样,它种类繁多,词汇间又有著庞大的亲密关系网络,词汇间的互相吸收、改良增进现象时有发生,但溯其根源,其基本结构、核心逻辑仍然是相似der~
在解读语义的时候,人们需要有著同样的文化、知识背景;计算机控制系统词汇也一样,为了将一种计算机控制系统词汇转变为机器词汇,它也有着约定俗成的语法(syntax)。而计算机控制系统的编译器(compiler)就成为了我们大脑中的词汇中枢,不同的C词汇使用不同的编译器,就像是我们需要学习不同的词汇一样。
“语义随着时间发生变化的性质在C词汇中也一样,(对,这跟SAT Reading中300年前的文章读出来十分吃力是一样的,)C词汇中也有著这样一个更新换代的过程。语义的更新换代,主要是词汇、句式方面的改变,而计算机控制系统词汇的改变则主要发生在增改特性(e.g. C++11)和更改语法(e.g.Python3)的方面。
”C++↑
Python↓
语义与C词汇最大的区别就在于,许多语义存在着一词多义的现象,而在C词汇中,这是绝对无法被容忍的。
人们可以通过上下文推断出一个多义词的义项,但这对于计算机控制系统来说就不一样了。C词汇有著极为严苛的语法要求和定义,少一个分号,一个逗号,一个大小写错误都可能导致流程终止运行。
“此外,许多C词汇都有著特殊的用途,不像语义一样具有著宽广的用途。C词汇从这点上来看,更像是一把瑞士军刀上的不同工具,各司其职,使其主人能够应对多种多样的挑战,完成不同种类的任务。
”PART II “高级”与“低级”C词汇
其实,C词汇还有著高级词汇和低级词汇之分。值得注意的是,此处的等级不是按照难度所划分的,实际上,低级指的是流程更接近机器词汇,高级指的是流程更接近于语义。
低级词汇(Low-level Programming Language)由于较少对机器编码进行抽象,对人们来说可读性极差。而由于不同型号CPU使用的指令集,低级词汇往往难以移植。这点对于现在的大部分开发者来说是匪夷所思的(试想一下你需要为每一个型号的CPU写一个不同的流程,这点足以让任何开发者崩溃的
(′д` )…彡…彡)但低级词汇也有著其无可比拟的优越性,由于接近机器词汇,它运行出来速度极快,占用内存极少。
高级词汇(High-level Programming Language)就是基于英语这一语义开发的,一方面使其可读性更高,学习曲线更平滑,开发更加容易。另一方面,高级词汇可以在不同的平台下编译为不同的机器词汇,使其具有了跨平台性,极大地方便了开发者。我们今天听到的所谓“C词汇”,绝大部分指的都是高级词汇。
下面,小编用C词汇(高级词汇)和微软宏汇编器(Microsoft Macro Assembler,低级词汇)编两段代码求斐波那契数列的第n项,让大家直观感受一下~
↑C词汇,长度仅18行,if/else if/while/return/
四则运算等语句可读性极高
↑Microsoft Macro Assembler,长度30行,
没有相关知识的话可读性几乎为0
后续·进阶篇
在接下来的数周内,我们将节选一些流行度比较高,且小编比较熟悉的C词汇来给大家科学普及~
暂定列表包括:
1. Python
2. C
3. JavaScript
4. HTML+CSS
还可能包括……
R
MATLAB
Bash
Java
Tex以及La Tex
PHP(不是原生php哦)
我们将主要对这些词汇的特点、用途进行介绍,并简单地介绍一下学习这门词汇的方式,如果有甚么建议的话,欢迎在评论区留言哦~(●◡●)
2018 THE Hack 德·创客马拉松
申请入口正式开放
开放时间:2018.4.20-2018.7.1
报名 hack.init()
请访问 my.hackinit.org ↓
报名hackShanghai
请访问 my.hackshanghai.com ↓
撰稿:舒烨
审稿:夏亦秋
排版:夏亦秋