Byte 与 Word
Basic Idea(核心概念)
byte 是字节单位,word 是由多个字节组成的一个机器字。
基本关系:
1 byte = 8 bit
1 word = 若干 byte在 CSAPP 第二章讨论机器级数据表示时,可以先把关系理解为:
bit -> byte -> word也就是:
多个 bit 组成 byte
多个 byte 组成 wordHex 与 Byte 的关系
十六进制的一位可以表示 4 个二进制位:
1 位十六进制 = 4 bit因此两位十六进制正好表示 8 个二进制位:
2 位十六进制 = 8 bit = 1 byte例如:
0x01234567可以按照每两个十六进制位拆成 4 个字节:
0x01 0x23 0x45 0x67所以:
0x01234567 = 4 byte = 32 bitWord 与 Byte 的关系
如果把 0x01234567 看成一个 32 位的 word,那么它由 4 个 byte 组成:
word: 0x01234567
byte: 0x01 0x23 0x45 0x67这里的 word 表示一个整体的机器字;而 byte 是这个 word 内部的字节组成部分。
因此可以记成:
word 是整体
byte 是组成 word 的字节单位高位字节与低位字节
对于数值:
0x01234567从数值权重来看:
高位字节 低位字节
0x01 0x23 0x45 0x67所以:
最高有效字节 = 0x01
最低有效字节 = 0x67这里的“高位”和“低位”描述的是数值本身的位权高低,不是内存地址高低。
Summary(总结)
1 byte = 8 bit
2 位十六进制 = 1 byte
1 word = 若干 byte对于:
0x01234567它可以拆成:
0x01 0x23 0x45 0x67其中:
0x01 是最高有效字节
0x67 是最低有效字节