Chapter1:基础

Posted the WORLD

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Chapter1:基础相关的知识,希望对你有一定的参考价值。

整本书的核心:语言的设计与实现,让我想到一句话:意识决定形态,结构决定功能。

行文的逻辑基本就是

1.提出一种设计的必要性,

2.设计从最初到现在的演变,

3.为实现这一设计,不同的语言用了不同的策略,

4.实现的细节,包括运行前的编译,运行中的检查等,也有可能是个语法糖,简单的实现换来优美的设计。

 

charpter1.0引言

1.机器语言通过指令集控制处理器,指令包括数字的运算,存储位的读写,地址的计算等

2.汇编语言是指令集的助记形式,用的是英文的缩写,机器语言是进制数

汇编语言与机器语言一一对应,所以本质上还是用指令集思考问题,是机器相关的。由汇编器完成两种语言的翻译

机器相关的汇编语言+很多种不同的指令集=同一想法在不同机器上复现很困难

 

最后,高级语言登场,逐渐实现机器无关性

且高级语言的单条语句与指令集中的单条语句不再对应,这也说明了编译器要足够了解程序正文的语义,进而翻译成机器语言

 

硬件的复杂化(不容易提升手写汇编语言的效率)+编译技术进步(生成越来越高效的汇编语言)=高级语言被人接受

这一历史体现了“边际成本”的有趣现象,一种设计的优势与劣势是相对的,人们追求优雅一致的设计,但又不想放弃简单高效的实现。

 

语言的设计目标:清晰,紧凑,易于维护,表达能力强,方便优雅,概念清晰,实现效率

 

charpter1.2程序设计语言的分类

说明式

  函数式:

  数据流:

命令式

  冯 诺伊曼:C

  脚本:python

  面向对象:Java

 

函数式:函数递归,目标函数递归为子问题

数据流:数据在功能节点间流动 tensorflow?

逻辑式:满足逻辑的值,不断筛选和加工 SQL

冯 诺伊曼:计算值(表达式,函数返回值),在变量上存储值,修改变量。

脚本:为特定目标快速建立原型

面向对象:对象维护状态(域),修改状态(方法)

 

charpter1.3:设计一种语言的目的

表达能力:为表达一种设计,是语言自带了特性,还是进行了语法包装?

实现效率:了解实现的细节,在语言中模拟缺乏的特性

 

charpter1.4

#!未完

以上是关于Chapter1:基础的主要内容,如果未能解决你的问题,请参考以下文章

Deep Learning(Ian Goodfellow) — Chapter1 Introduction

读《深入理解计算机系统》Chapter1

多线程核心技术 Chapter1

Chapter1 - 像素(Pixel)操作

Gromacs命令-Chapter1

Graph Representation Learning学习笔记-chapter1