首页 历史故事了解数制:使用2#表示16位二进制常数

了解数制:使用2#表示16位二进制常数

【摘要】:二进制常数用2#表示,如2#1111_0110_1001_0001是一个16位二进制常数。

1.二进制

二进制数的一位(bit)只有0和1两种不同的取值,可用来表示开关量(或称数字量)的两种不同的状态,如触点的断开和接通,线圈的通电和断电等。如果该位为1,则正逻辑情况下表示梯形图中对应的编程元件的线圈“通电”,其常开触点接通,常闭触点断开,反之相反。二进制常数用2#表示,如2#1111_0110_1001_0001是一个16位二进制常数。

2.十六进制

十六进制数的16个数字是由0~9这10个数字以及A、B、C、D、E、F(对应于十进制数10~15)6个字母构成的,其运算规则为逢十六进一,在SIMATIC中B#16#、W#16#、DW#16#分别用来表示十六进制字节、十六进制字和十六进制双字常数,例如W#16#2C3F。在数字后面加“H”也可以表示十六进制数,例如16#2C3F可以表示为2C3FH。

十六进制与十进制的转换按照其运算规则进行,例如B#16#1F=1×16+15=31;十进制转换为十六进制则采用除16方法,例如1234=4×162+13×16+2=4D2H。十六进制与二进制的转换则注意十六进制中每个数字占二进制数的4位就可以了,例如4D2H=0100_1101_0010。

3.BCD码

BCD码是将一个十进制数的每一位都用4位二进制数表示,即0~9分别用0000~1001表示,而剩余6种组合(1010~1111)则没有在BCD码中使用。

BCD码的最高4位二进制数用来表示符号,16位BCD码字的范围为-999~999。32位BCD码双字的范围为-9999999~9999999。

BCD码实际上是十六进制数,但是各位之间的关系是逢十进一。十进制数可以很方便地转换为BCD码,例如十进制数296对应的BCD码为W#16#296或2#0000_0010_1001_0110。