为什么布尔有时被称为“标志”?

问题描述 投票:0回答:3

为什么布尔有时被称为“标志”?这只是一个比喻还是有什么历史原因?

boolean flags
3个回答
7
投票

旗帜是一种古老的传达信息的方式。如果我们忽略降半旗,一面旗帜只有两种状态:升起或未升起。例如,考虑一面白旗——举起它意味着投降。不提高它(默认状态)意味着您不会投降。

布尔变量就像标志一样,只有两种状态 -

true
false


5
投票

Flag 可以用作名词和动词:标记可以表示注意、标记、发出信号(也许这是源自航海旗帜的使用?)

计算机历史上对术语标志的早期(但可能不是第一次)使用可以在 1959 年的 IBM 1620 中找到(我的重点):

同时访问内存两位小数位(偶数-奇数) 用于数字数据的数字对或用于文本的一个字母数字字符 数据)。每个十进制数为 6 位,由奇校验组成 位、一个标志位和四个 BCD 位(用于表示该数字的值) 以下格式:

C F 8 4 2 1

标志位有多种用途:

  • 在最低有效数字中,它被设置为指示负数(带符号的幅度)。
  • 它被设置为标记数字的最高有效位(文字标记)。
  • 在 5 位地址的最低有效位中,它被设置为间接寻址(1620 I 上的一个选项,1620 I 上的标准配置) 二)。可以使用多级间接(您甚至可以将 机处于无限间接寻址循环中)。 在 5 位地址的中间 3 位(在 1620 II 上),它们被设置为选择 7 个索引寄存器之一。

因此用于标记或指示某事物的位称为标志位。

当然,在标志字段或状态寄存器中使用“标志”是很自然的。

但是一旦建立了标志和位之间的关联,它们的使用就可以互换也是可以理解的。当然,这也适用于布尔变量。

PS:同样的问题已经被问过,但不幸的是没有答案。


0
投票

我喜欢这个想法,相反,flag这个词最初指的是邮箱标志。

© www.soinside.com 2019 - 2024. All rights reserved.