OCT2BIN函数用于将八进制数转换为二进制数;OCT2DEC函数用于将八进制数转换为十进制数;OCT2HEX函数用于将八进制数转换为十六进制数。OCT2BIN、OCT2DEC、OCT2HEX函数的表达式为:
OCT2BIN(number,places) OCT2DEC(number) OCT2HEX(number,places)
其中,number参数为待转换的八进制数。参数的位数不能多于10位八进制数(30位二进制数),数字的最高位(二进制位)是符号位,其他29位是数据位。负数用二进制数的补码表示。places参数为所要使用的字符数。如果省略places参数,函数OCT2BIN和OCT2HEX用能表示此数的最少字符来表示。当需要在返回的数值前置零时,places参数尤其有用。下面通过实例详细讲解该函数的使用方法与技巧。
打开“八进制.xlsx”工作簿,切换至“Sheet1”工作表,本例的原始数据如图20-6所示。该工作表中记录了一组要转换的八进制数,需要将这些数据与其他各进制之间的数值进行转换。具体的操作步骤如下。
STEP01:选中B3单元格,在编辑栏中输入公式“=OCT2BIN(A3)”,然后按“Enter”键返回,即可将A3单元格中的八进制数转换为二进制数,如图20-7所示。
图20-6 原始数据
图20-7 八进制数转换为二进制数
STEP02:选中C3单元格,在编辑栏中输入公式“=OCT2DEC(A3)”,然后按“Enter”键返回,即可将A3单元格中的八进制数转换为十进制数,如图20-8所示。
STEP03:选中D3单元格,在编辑栏中输入公式“=OCT2HEX(A3)”,然后按“Enter”键返回,即可将A3单元格中的八进制数转换为十六进制数,如图20-9所示。
图20-8 八进制数转换为十进制数
图20-9 八进制数转换为十六进制数
STEP04:选中B3:D3单元格区域,将鼠标移至D3单元格右下角,利用填充柄工具复制公式至B4:D12单元格区域,最终转换结果如图20-10所示。因为58、59不是有效的八进制数,所以在进行转换时均返回错误值“#NUM!”。
图20-10 最终计算结果
如果number参数为负数,函数OCT2BIN、OCT2HEX将忽略places参数,返回10位二进制数。对于函数OCT2BIN,如果number参数为负数,不能小于7777777000;如果number参数为正数,不能大于777。如果number参数不是有效的八进制数,函数OCT2BIN、OCT2DEC、OCT2HEX返回错误值“#NUM!”。如果函数OCT2BIN、OCT2HEX需要比places参数指定的更多的位数,将返回错误值“#NUM!”。如果places参数不是整数,将截尾取整。如果places参数为非数值型,函数OCT2BIN、OCT2HEX返回错误值“#VALUE!”。如果places参数为负数,函数OCT2BIN、OCT2HEX返回错误值“#NUM!”。