为什么位从右到左编号?

时间:2014-05-08 19:48:06

标签: assembly computer-science computer-architecture bits

为什么位在计算机组织,计算机体系结构中从右到左编号。

4 个答案:

答案 0 :(得分:4)

比特不是从右到左编号。它们从最低权重(根据所选惯例获得数字0或1的最低权重位)到最高权重(可以是15或16,31或32,63或64,......)进行编号。

以这种方式对它们进行编号的一个原因是,对于2 n (在0开始时的约定)中计数的位数n的数量将始终相同。如果它们在另一个方向上编号,则n的权重不能仅从n推断,它还取决于所讨论的单词的宽度。

另一个原因是,具有较低数字的位具有较小的权重是非常直观的。

它们最终在编写时从右到左编号,因为它们是从左边的最高权重写到右边的最低权重。数字已经写了几个世纪。如果这是你想知道的,原因可能已经丢失,但the Wikipedia page on the Hindu–Arabic numeral system可能有线索。

答案 1 :(得分:2)

那么,为什么十进制数从右到左编号?这就是我们的系统如何发展。它本来可以像其他方式一样轻松......

答案 2 :(得分:0)

就像任何其他数字一样:右边的值越低。它只是改变了基础。

答案 3 :(得分:0)

有些处理器将msb位先写入lsbit的位数,从lsbit到msbit的位数,与endianness无关,这些公司决定如何做。只要每个使用该产品的人都坚持一个惯例,这是一个任意决定,它在宏观计划中无关紧要。在某些情况下,位设置和移位指令基于芯片设计者的惯例运行,如果不是每个人都使用该惯例,那么您就会遇到问题。它也变得非常丑陋,例如当使用带有powerpc核心的fpga,其数字来自msbit为0,但是如果你使用verilog,自然约定首先是lsbit,所以你不得不弄乱总线和/或创建一个边界围绕处理器核心,你可以调整所有东西,直接连接到通用的外围设备等,这些都是另一种方式。

简短的回答是"因为这是设计师选择的#34;它是任意的。