第2章 理解计算机系统的基本思维(第一部分)
第2章 理解计算机系统的基本思维(第一部分)
- 1.理解0和1的思维
- 1.1语义符号化举例
- 1.2数值,字母的表示
- 1.2.1 正数的表示
- 1.2.1 小数的表示
- 1.2.3 数值运算
- 1.2.4 字符的表示
- 1.3 0和1思维小结
- 2.图灵机与冯·诺依曼计算机
- 2.1 图灵机
- 2.1 冯·诺依曼计算机
- 2.3 存储器:可按地址`自动存取信息`的部件。
- 2.4 机器级程序的存储与执行
- 2.5 贯通性思维小结
1.理解0和1的思维
1.1语义符号化举例
0和1的思维即语义符号化、符号计算化、计算0(和)1化、0(和)1自动化、分层构造化、构造集成化。
语义符号化是一个理解
和抽象
的过程,通过对现实世界现象
的深入理解,抽象出普适的概念
(本体
),进而将概念符号化
进行各种计算,再将符号语义化
,便可处理不同的问题。
使用本体
的概念可以在变换时空的环境下表征其他的现象。
1.2数值,字母的表示
原码、反码、补码
正数
的原码、反码、补码形式都是一样的,最高位为0
表示为正数
负数
的最高位始终为1
,表示为负数,原码
表示中的其余位数同真实数值的二进制数,反码
为除去最高位符号位外,其余为按原码取反,补码
为反码加1
1.2.1 正数的表示
1.2.1 小数的表示
- 定点数
小数点位置固定,或者在符号位后面(机器数全为小数)
,或者在整个数值的尾部(机器数全为小数)
- 浮点数
由三部分构成:浮点数的符号位
、浮点数的尾数位
、浮点数的指数位
。指数位采用平移的方式将(-n,n)区间数转换为(0,2n)区间数,避免了指数的符号位占位问题。同时按照数值的位数多少区分为单精度
和双精度数
1.2.3 数值运算
- 加减运算可以按位运算并考虑进位和借位,按位运算就可以用逻辑运算来实现
- 乘除法运算可以采用多次加减法运算来实现 二进制数
左移1位
=>乘以2
, 二进制数右移1位
=>除以2
两个数相减,10-3
=>10 + (-3)
,运用两个数的补码
做运算,符号位
也参与运算
判断溢出
:只有两个正数或者两个负数相加的时候才会溢出,当两个数符号位相同,但是结果的符号位不同,结果不精确,已经溢出。
1.2.4 字符的表示
ASCII码,Unicode编码,汉字输入码等等
1.3 0和1思维小结
数值信息
和非数值信息
均可用0和1表示,均能够被计算(信息表示)- 物理世界的/语义信息均可通过
抽象化
和符号化
,再通过进位制
和编码制
转换成0和1表示 - 硬件系统是通过
正确的、低复杂度的芯片电路组合成高复杂度的芯片,逐渐组合,功能越来越强
2.图灵机与冯·诺依曼计算机
2.1 图灵机
图灵机将控制处理的规则用0和1表示,将待处理的信息以及处理的结果也用0和1表示,处理即是对0和1的变换
- 指令
控制基本动作
执行的命令
一条指令有操作码
和地址码
构成。操作码告诉CPU要进行的操作,地址码可以直接表示为操作数
也可以表示为操作数的地址
- 程序
基于指令构造的,若干指令的一个组合
或一个执行序列
,用于实现复杂动作 - 程序执行机构
负责解释程序
,即解释程序之间的组合,并依次调用指令
- 计算系统
基本动作 + 指令 + 程序执行机构 - 抽象
将经常使用的,可用低层次系统实现的一些复杂动作进行命名
,以作为高层次系统的指令
被使用
2.1 冯·诺依曼计算机
早期计算机以运算器
为中心,输入、输出数据
要通过运算器,进行计算
也要通过运算器,不能同时进行,现在计算机以存储器
为中心,输入、输出程序可以不通过运算器,运算器负责运算,存储器支持运算器和输入、输出的并行工作。
2.3 存储器:可按地址自动存取信息
的部件。
一般存储器由若干个存储单元
构成,每个存储单元由若干个存储位
构成,一个存储位可以存储0和1,这些相同位数的存储位构成的存储字
即为存储单元的内容。所有的存储单元构成一个存储矩阵
。每个存储单元由一条地址线
控制读写。
n位的地址编码可以控制2^n
个存储单元的读写,可以说存储器的容量为2^n
。输出缓冲器
是控制向存储单元写入还是读出。
- 每个存储单元的存储位必须相同,并且与数据线的个数相同(一般情况下),也表示计算的位数(寻址长度)
- 同一时刻只能操作一个存储单元
2.4 机器级程序的存储与执行
所谓指令的执行,即由信号发生器产生各种电平信号,发送给各部件,各部件依据控制要求再产生相应的电平信号,这种信号的产生、传递和变化的过程及指令的执行过程
各种信号的传递过程需要接受时钟
和节拍
的控制。机器中的时钟发生器产生基本的时钟周期/节拍
,决定了机器运行的快慢,通常CPU主频
说的是该时钟发生的频率。
指令执行过程模拟:
2.5 贯通性思维小结
第2章 理解计算机系统的基本思维(第一部分)相关推荐
- 《深入理解计算机系统》读书札记(第一章)
<深入理解计算机系统>读书札记(第一章) 原书网盘链接地址:https://pan.baidu.com/s/1kF1Q9TloZzzgXewv7atWBw 提取码:gtt1 第一章 计算机 ...
- 深入理解计算机系统第四版_《深入理解计算机系统》读书笔记 —— 第一章 计算机系统漫游...
本书第一章沿着一个程序的生命周期,简要地介绍一些逐步出现的关键概念.专业术语和组成部分. 一.信息就是位+上下文 在计算机系统中所有的信息都由一串比特来表示. 一串相同的比特(或者几个相同的字节)可以 ...
- 【深入理解计算机系统-学习笔记】第一章 计算机系统漫游
第一章 计算机系统漫游 简介: 我们通过跟踪hello程序的生命周期来开始对系统的学习--从它被程序员创建开始,到在系统上运行,输出简单的消息,然后终止 我们将沿着这个程序的生命周期,简单得介绍一些逐 ...
- 理解中国经济的五层思维-中国视角下的宏观经济
理解中国经济的五层思维 – 潘登同学的宏观经济学笔记 文章目录 理解中国经济的五层思维 -- 潘登同学的宏观经济学笔记 思想的力量 理解中国经济的五层思维 第一层思维:唯GDP论 第二层思维:天真的市 ...
- 【《深入理解计算机系统》读书笔记(3)】 第3章 程序的机器级表示
[时间]2021.11.19 [题目]<深入理解计算机系统>读书笔记(3) 第3章 程序的机器级表示 目录 一.简介 二.一些重点图 1.常见数据类型格式 2.16个整数寄存器 3.寄存 ...
- 深入理解计算机系统思维导图
<深入理解计算机系统>思维导图 文章目录 <深入理解计算机系统>思维导图 前言 一.第1章 计算机系统漫游 二.第2章 信息的表示和处理 三.第5章 优化程序性能 四.第7章 ...
- 《深入理解计算机系统》第七章读书笔记
<深入理解计算机系统>第七章读书笔记 第七章:连接 连接 1.连接:将各种代码和数据部分收集起来并组合成为一个单一文件的过程.这个文件可被加载或拷贝到存储器并执行. 2.连接可以执行于编译 ...
- 深入理解计算机系统 第三章笔记,《深入理解计算机系统》笔记.PDF
<深入理解计算机系统>笔记 <深入理解计算机系统>笔记 目錄 介紹 0 第1章计算机漫游 1 1.1信息就是位+上下文 1.1 1.2程序被其他程序翻译成不同的格式 1.2 1 ...
- 《深入理解计算机系统》第七章 链接
<深入理解计算机系统>第七章 链接 链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载(货被拷贝)到存储器并执行. 链接的时机 编译时,也就是在源代码被翻译成 ...
最新文章
- 【每日一算法】实现strStr()
- 格灵深瞳算法团队获得NIST人脸识别竞赛全球第一
- python lambda_Python 匿名函数 lambda
- 数据库类型少_全栈之数据库系列 - 数据库的设计、架构和使用规范
- matlab 级联cic,Matlab中CIC滤波器的应用
- Java后端架构开荒实战(一)——基础设施
- 流行学习简单入门与理解
- Android 开发环境在 Windows7 下的部署安装
- Unity 导出Supermap exe
- tensorflow之矩阵相乘与matmul
- php登录界面模板美化,一款简单好看的登录界面——Typecho美化包 Sign-Page-For-Typecho...
- [转]ASP.NET MVC中你必须知道的13个扩展点
- Linux Samba服务器配置
- [渝粤教育] 西南科技大学 行政法学与行政诉讼法学 在线考试复习资料
- hdu 3987 Harry Potter and the Forbidden Forest
- protobuf 中 repeated fields 细节
- 另一个视角看春节红包大战,为什么说智能云是百度第二增长引擎
- 实时计算 Flink SQL 核心功能解密
- linux猜数字代码,Shell脚本实现猜数字游戏
- 你不知道的margin:auto居中原理