计算机组成学习-数据的表示和运算总结

计算机组成学习-数据的表示和运算总结_第1张图片

 1、进制与编码

1.1 进位计数法

常用的进位计数法有十进制、二进制、八进制、十六进制等。十六进制每个 数位可取0〜9、A、B、C、D、E、F中的任意一个,其中A、B、C、D、E、F分别表示 10〜15。

八进制数字通常以前缀 "0"(零)加上数字表示,例如,八进制数 12 表示为 014。在JavaScript中,你可以使用前缀 "0o" 或 "0O" 来表示八进制数。例如:0o14

十六进制数字通常以前缀 "0x" 或 "0X" 开头表示,例如,十六进制数 1A 表示为 0x1A

1.2 不同进制数之间的相互转换

(1)二进制混合数转化为八进制或16进制

对于一个二进制混合数(既包含整数部分,又包含小数部分),在转换时应以小数点为界。 其整数部分,从小数点开始往左数,将一串二进制数分为3位(八进制)一组或4位(十六进制) 一组,在数的最左边可根据需要加“0”补齐;对于小数部分,从小数点开始往右数,也将一串 二进制数分为3位一组或4位一组,在数的最右边也可根据需要加“0”补齐。

计算机组成学习-数据的表示和运算总结_第2张图片

(2) 十进制数转换为任意进制数

计算机组成学习-数据的表示和运算总结_第3张图片

1.3 定点数的编码表示

定点数编码表示法主要有以下4种:原码、 补码、反码和移码。

1.3.1 原码

用机器数的最高位表示数的符号,其余各位表示数的绝对值。

真值零的原码表示有正零和负零两种形式,即[+0]原= 00000和[-0]原= 10000

1.3.2 反码

正数反码的定义和相应的补码(或原码)表示相同。负数反码的定义在绝对值按位求反。

0的表示不唯一(即存在正负0);

1.3.3 补码

对于正数,与原码的方式一样。对于负数,符号位取1,其余各位由真 值“各位取反,末位加1”得到。补码转换为真值,若符号位为0,与原码的方式一样。若符号位为1,真值的符号为负,数值部分各位由补码“各位取反,末位加1”得到。

 0的表示唯一

1.3.4 移码

移码就是在真值X上加上一个常数(偏置值)。如果机器字长为n,偏移值为2^{n-1}

2、运算方法和运算电路

(有需要再弄懂)

此ALU的核心是带标志加法器

3、整数的表示和运算

(有需要再弄懂)

.有符号数和无符号数的转换

将short int强制转换为unsigned short 只改变数值,而两个变量对应的每位都是一样的。

不同字长整数之间的转换,当大字长变量向小字长变量强制类型转换时,系统把多余的高位部分直接截 断,低位直接赋值,因此也是一种保持位值的处理方法。而短字长到长字长的转换,在位值相等的条件下还要补充高位的符号位,可以理解为数值 的相等。

4、 浮点数的表示与运算

计算机组成学习-数据的表示和运算总结_第4张图片 

计算机组成学习-数据的表示和运算总结_第5张图片 浮点数的运算:1. 对阶,2. 尾数求和,3. 规格化,4. 舍人,5. 溢出判断

你可能感兴趣的:(学习)