奎克的藏经阁 · 原书印刷页

编码 隐匿在计算机软硬件背后的语言 · 第 212 页

PDF 物理页索引 228 · 编码隐匿在计算机软硬件背后的语言

书名
编码 隐匿在计算机软硬件背后的语言
作者
未记录
印刷页
212
PDF 物理页
228(从 0 开始)
章节
编码隐匿在计算机软硬件背后的语言
UUID
38270854-596f-4a26-8183-db8c968c6020
来源类型
original_book
页面 SHA-256
6545dfb0bfde2ba11474a75ddea6dfc2e71eefd24d5f6c68376256905e822207

有时人们可能会用到千比特或兆比特(注意是比特而不是字节),这只是极少数情况。当我们讨论涉及存储器的相关问题时,通常使用的是字节数而非比特(需要的时候可以通过把字节数乘以8将其转换成比特)。有一种情况下我们会经常用到千比特和兆比特,那就是在描述在线路中流动的数据时,很多句子中经常会出现千比特每秒(kbps)或兆比特每秒(mbps)这些用语。例如,一台56K的调制解调器指的是其数据处理速度为56千比特每秒,而不是56千字节每秒。

既然我们已经学会如何构造任意大小的RAM阵列,接下来继续对这个问题深究下去。假设现在已经构造好了一个容量为65,536字节的存储器组织,如下图所示。

为什么选择大小为 64 KB的 RAM阵列?而非 32 KB 或128 KB?因为 65,536 是一个约整数,转换为幂的形式就是216,这个RAM阵列需要配备16位的寻址端。换句话说,该地址恰好可以用2个字节表示。将地址范围转化为十六进制就是0000h\~FFFFh。

我前面也提到过,64KB的内存是1980年的个人电脑的主流配置,但它的确不是用电报继电器组成的。我们可以用继电器来组成一块内存吗?我也相信你不想这么做。在我们先前的讨论中,存储每个比特需要9个继电器,推算一下64K×8的RAM阵列就需要至少500万个继电器!

如果用一种控制面板来辅助我们管理对这块 64KB 存储器的操作包括写数据和读数据,一切将会直观明了。在这款控制面板上,有16个开关用于控制地址位,还有8个开关用来控制要输入的8比特数据。写操作端也用一个开关来表示,8个灯泡用来显示8位数据,这个控制面板如下图所示。

初始状态下所有的开关均置为 $0 _ { \circ }$ 其中右下角有一个标识为控制端(takeover)的开关,这个开关的作用是确定由控制面板还是由外部所连接的其他电路来控制存储器。如果其他电路连接到与控制面板相连的存储器,这时控制端置0(如图所示),此时存储器由其他电路系统接管,控制面板上的其他开关将不起任何作用;当控制端置1时,控制

编码隐匿在计算机软硬件背后的语言

212