计算机组成原理(二)
计算机存储数字都是以补码存储的
数字2种解析方式:有符号(二进制数据首位为符号位 0表示整数 1表示负数)和无符号(没有符号位)
1000 0111 -7 87
反码:正数原码和反码一致,负数符号位不变,其余取反 负数反码 1111 1000 F8
补码 = 反码+1 1111 1001 F9
补码得到源码:
符号位不变,其他取反
1 000 0110
+1
1 000 0111 原码
这样设计的好处是为了方便计算,只用一条电路就可以完成正数和负数的计算
参考链接:http://www.ruanyifeng.com/blog/2009/08/twos_complement.html
FC 1111 1100 换算10进制无符号252 有符号是-124
1000 0011
+1
1000 0100
计算机是怎么实现计算的?
CPU 执行计算的 存放了一部分的指令和数据
内存中
内存条 主内存中
CPU读写的呢就是通过地址线 数据线 控制线
地址线决定了CPU 可以从哪里读写数据
数据线决定了CPU一次性能够传送多少数据的能力
控制线决定了CPU对其他部件的读写控制能力
地址线 03 内存地址
控制线 读 0或者1
数据线 FF
数据从哪里来(根据内存地址读取数据) 汇编指令去表示
计算 汇编指令去表示
数据到哪里去(根据内存地址写入数据) 汇编指令去表示
MOV 移动指令
将内存中的数据移动到CPU中
将CPU中的数据移动到内存中
根据内存地址移动
计算指令
汇编程序员就是用各种汇编指令表示出这个计算过程然后形成一个序列(程序),让CPU按照我们的意愿进行计算
加深内存认识,debug -e指令修改内存地址 B800:0400中的内容,观察看到的现象
我们写入的数据是不是写到了内存条这个物理设备之中?
这明显不是的 写到显卡上的显存
思考CPU是如何看待这些插在主板上的物理设备的?
其实CPU是把这些物理设备都看成一段连续的内存地址,然后每个物理设备都占有一段内存地址

浙公网安备 33010602011771号