【计算机组成原理】2、二进制和十六进制转换,进制相减、内存地址偏移计算与容量计算 |
您所在的位置:网站首页 › 系统监控程序的作用 › 【计算机组成原理】2、二进制和十六进制转换,进制相减、内存地址偏移计算与容量计算 |
文章目录
一、进制转换1.1 二进制转十六进制1.2 十六进制转二进制
二、进制相减2.1 十六进制
三、内存地址偏移计算3.1 根据首末地址,求存储容量3.2 根据末地址 和 存储容量,求首地址
一、进制转换
1.1 二进制转十六进制
因 2 4 = 16 2^4=16 24=16,所以每4个二进制位,可表示为1个十六进制。例如如下: 00001111(B) = F(H)、0xF、0x0F11111111(B) = FF(H)、0xFF111100001111(B) = F0F(H)、0xF0F1111111100001111(B) = FF0F(H)、0xFF0F 1.2 十六进制转二进制每1个十六进制 转换为 4个二进制位即可。例如如下: 0xF0F = 111100001111(B) = 0000111100001111(B)0xFF0F = 1111111100001111(B) 二、进制相减 2.1 十六进制例如:0xA000 - 0x0800 先从末尾开始减:最后两位的0x0000-0x0000 = 0x0000再倒数第三位相减 0x0000 - 0x0800,因为不够减,所以借位得到16(因为是十六进制相减),即 16 - 8 = 8在倒数第四位相减 0xA000 - 0x0000,因为已经被借走了一位,则变为 0x9000 - 0x0000 = 0x9000 故最终答案为 0x9800PS:类比二进制相减即容易理解了 三、内存地址偏移计算例如:若一栋楼共100层,最底为第0层,则最顶为第99层。因为从0到(n-1)共有n个数,如下图: 3.1 根据首末地址,求存储容量题目 如下: 如下图所示,首地址是 30000H,末地址是 AFFFFH。 因为题目说明内存以字节编制,则说明即每个地址是一个字节(即楼房的每层放了1个byte,即8个bit)。 题意问存储容量,即问能存储多少 bit。 题解如下: 先求楼层数: AFFFF(H) - 30000(H) + 1 = 7FFFF(H) + 1 = 80000(H)而 80000(H) = 1000-0000-0000-0000-0000(B) = 2^19,即 2 ^ 19 Bytes 而 2 1 0 = 1 K 2 ^ 10 = 1K 210=1K、 2 2 0 = 1 M 2 ^ 20 = 1M 220=1M、 2 3 0 = 1 G 2 ^ 30 = 1G 230=1G故 2 ^ 19 bytes = 2 9 2^9 29 * 2 10 2^{10} 210 = 2 9 K b y t e s 2^9 Kbytes 29Kbytes = 2 9 K B 2^9 KB 29KB = 512 KB故最终答案为能存储 512 KB 的容量(如下图): 3.2 根据末地址 和 存储容量,求首地址题目如下: 题解如下: 若题目未指明,则默认每个地址为 1个字节。 因为共 2KB 即 2K Bytes 即 2048 Bytes,需将 2000(十进制)转换为 十六进制。 因常识为 1024 = 2 10 2^{10} 210,故 2000 = 2 11 2^{11} 211 = 2后面1个0(B) = 1000-0000-0000(B) = 800(H) 即 0x800。详见下图: 而因公式为 存储空间 = 末地址 − 首地址 + 1 存储空间 = 末地址 - 首地址 + 1 存储空间=末地址−首地址+1,故 首地址 = 末地址 − 存储空间 + 1 首地址 = 末地址 - 存储空间 + 1 首地址=末地址−存储空间+1 = 9FFF(H) - 0800(H) + 1(B)= A000(H) - 0800(H) = 9800(H)。详见下图: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |