《程序设计基础》

发布时间 2023-10-11 22:44:18作者: ft61

1.1.2 程序流程图

p8 表 1-1

1.2.2 程序设计方法

结构化程序设计(Structured Programming, SP):面向过程

面向对象程序设计(Object Oriented Programming, OOP)

2.1.1 数制

p18 表 2-1 4 种常用数值中的数码、基数、位权及后缀

2.2.2 整数的表示方法

以二进制表示整数

无符号整数:编码与数值相同
原码:最高位表示符号(正数为 \(0\)),其余位存储绝对值
补码:正数的补码为原码,负数的补码为绝对值的原码按位取反再 \(+1\)

补码便于加减的本质是模 \(2\) 的次幂

2.3 实数在计算机中的表示

以近似成有限小数(二进制)表示实数

浮点数 \(sM\times2^{E}\)\(s\in\{0,1\}\) 为数值的符号,\(M\in\mathbb{N}\) 为数值的精度,称为位数,指数 \(E\in\mathbb{Z}\) 称为阶码

IEEE754 国际标准:\(M\) 采用原码表示,最高非零位为 \(2^{0}\),存储时只存储小数点后的部分 \(M'\)\(E\) 采用移码表示(在真值上加一个偏置值)

对于 \(64\) 位浮点数 double\(s\)\(1\) 位(正数为 \(0\)),\(M'\)\(52\) 位,\(E_{\text{移}}\)\(11\) 位(偏置值 \(2^{10}-1\)

【例 2-18】

\((-2.75)_{10}=(-10.11)_{2}=(-1.011\times2^{1})_{2}\)

\(s=1\)
\(M=1.011\)\(M'\) 存储为 \(0110\cdots0\)
\(E_{\text{真}}=1,E_{\text{移}}=1024\),存储为 \(10000000000\)