
编程语言学习-高级语言基本认知
文章平均质量分 95
高级程序设计语言是如何运行的?高级程序设计语言都有哪些基本要素?不同语言之间又有什么共同之处呢?本专栏就是用来介绍我对编程语言和编程这件事情的基本理解,为以后学习其他技术打下基础。
劳码识途
最简单的音调,需要最艰苦的练习。
展开
-
高级语言是如何运行的——语言的运行方式
高级语言的运行方式有两大类,一类是直接把我们的高级语言的代码翻译为机器码,由机器直接运行,采用这种方式运行的语言我们称之为编译运行的语言;另一种就是再为我们的高级语言专门写一个程序,这个程序的作用就是解释执行我们的高级语言的代码;采用这种方式运行的语言我们称之为解释执行的语言。原创 2022-03-14 01:02:04 · 13128 阅读 · 0 评论 -
计算机是如何读懂高级语言的——编译过程简述
从上面的图中我们可以看出,编译器的前端就是编译器对程序代码的分析和理解过程,它通常只和语言的语法有关,跟目标机器无关;而与之对应的后端则是生成目标代码的过程,这是跟目标机器有关的。原创 2022-03-14 00:42:37 · 1814 阅读 · 2 评论 -
如何写出更优雅的代码——编程范式简述
编程范式本质是从某方面对程序员编程能力的限制和规范,很多编程范式已经被熟知禁止使用哪些技术,同时允许使用哪些。例如,结构化编程不允许使用goto;纯粹的函数式编程不允许有副作用。原创 2022-03-14 00:26:20 · 942 阅读 · 0 评论 -
高级语言中的成语——函数
而在高级程序设计语言中,通过子程序,我们可以把一些常用的功能封装起来,在需要的地方去调用它。那么就可以做到用一行代码实现非常丰富的功能原创 2022-03-09 23:35:28 · 551 阅读 · 0 评论 -
静态类型语言中类型的灵活性——泛型和变型
协变与逆变(Convariance and contravariance)是在计算机科学中,描述具有父/子型别关系的多个数据类型通过型别构造器构造出的多个复杂数据类型之间是否有父/子型别关系的用语。原创 2022-03-09 23:28:32 · 414 阅读 · 0 评论 -
高级语言基本世界观——类型系统
不同语言的类型规则可能天差地别,但是我们往往会从两个维度来描述一门语言类型系统的基本特征,分别是: 动/静、强/弱原创 2022-03-09 22:48:11 · 607 阅读 · 0 评论 -
高级语言中如何操作内存——变量和值
在高级语言中访问某个数据存储区域的唯一方式就是使用左值,除此之外,别无他法原创 2022-02-28 00:49:49 · 531 阅读 · 0 评论 -
高级语言中的短语和句子——表达式和语句
了解完基本的语言结构token之后,下一步就是学习语言的语法,然后使用特定的语法结构排列token来构成更加高级的语法结构,类似于英文中的短语和句子,高级程序设计语言中更高级的语言结构是表达式和语句。原创 2022-01-29 22:43:16 · 1266 阅读 · 0 评论 -
高级语言中的单词——5种类型的token
《高级语言中的单词——5种类型的token》原文链接,阅读体验更佳特别感谢李文塔工程师,这篇文章中借鉴了《Go语言核心编程》中第一章的许多内容,其实在写这篇文章的时候我卡了很长一段时间,也重新写了很多遍,但是总觉得思路不对,这本书让我茅塞顿开。上篇文章《编程语言的自举之路——从机器码到高级语言》中提到过,现在高级程序设计语言已经有几百种了,每一门编程语言所面向的问题领域都是不同的,那么每一门语言也就都具有自己的特性,它们的语法形式也是千差万别。但是,不同高级语言最终都是需要转换成计算机可以运行的二进原创 2021-11-08 22:28:52 · 2366 阅读 · 0 评论 -
编程语言的自举之路——从机器码到高级语言
《编程语言的自举之路——从机器码到高级语言》原文链接,阅读体验更佳语言是协议在中国,大多数人使用汉语进行交流,我对你说一句汉语你能听懂并做出回应;如果有人对你说一句英语,而你又正好学习了英语,那么你也能听懂并做出回应。可见我们平常所使用的自然语言是人与人之间交流的一种协议,不同的语言就是不同的协议,但是因为不同的语言都有一个统一的物理基础——地球,所有文明的诞生环境都是地球,所有语言的目的也都是一样的,那就是描述地球,记录一些物或者事,所以不同的自然语言之间可以相互翻译。而如果我们掌握了多门自然语言也原创 2021-11-08 22:24:59 · 1578 阅读 · 0 评论 -
指令也是数据?浅谈计算机体系结构
《指令也是数据?浅谈计算机体系结构》原文链接,阅读体验更佳我从大学期间开始接触编程,接触的第一门编程语言是C语言,后来也进过实验室,玩过单片机,还接触过汇编,但是最终都没有走下去。到大四下学期的时候由于毕业设计和工作的需要,开始接触JavaWeb,从此踏上了一条不归路。现在也已经工作两年多的时间了,接触的语言也越来越多,我也成功脱离的语言之争的低级趣味。学习更多的编程语言,熟练使用甚至精通多门编程语言已经成为了我长期的目标。不知为何,我对编程有一种特别的执念,总想总结出一套自己的方法论和思维体系,在编原创 2021-11-08 22:18:20 · 675 阅读 · 0 评论