进制符号的多方面阐述

一、二进制

二进制是一种用0和1表示数字的进制。它是计算机内部数据的基础表示方法。


// 二进制转十进制的示例代码
function binaryToDecimal(binary) {
  let decimal = 0;
  for (let i = 0; i < binary.length; i++) {
    decimal += Number(binary[i]) * Math.pow(2, binary.length - i - 1);
  }
  return decimal;
}

以上代码是将二进制转为十进制的实现。需要注意的是,在计算机中,二进制数可以用前缀0b来表示。

二、八进制

八进制是一种用0~7表示数字的进制。在现代计算机中不太常用,但在Unix、Linux等系统的文件权限中经常使用到。


// 八进制转十进制的示例代码
function octalToDecimal(octal) {
  let decimal = 0;
  for (let i = 0; i < octal.length; i++) {
    decimal += Number(octal[i]) * Math.pow(8, octal.length - i - 1);
  }
  return decimal;
}

注意,在计算机中,八进制数可以用前缀0来表示。

三、十六进制

十六进制是一种用0~9及A~F(大小写不敏感)表示数字的进制。它在计算机中广泛使用,因为它可以用更少的位数表示同样的数值,并且更便于人类阅读。


// 十六进制转十进制的示例代码
function hexToDecimal(hex) {
  let decimal = 0;
  for (let i = 0; i = '0' && digit = 'a' && digit = 'A' && digit <= 'F') {
      decimal += (digit.charCodeAt(0) - 55) * Math.pow(16, hex.length - i - 1);
    }
  }
  return decimal;
}

计算机中,十六进制数可以用前缀0x表示。

四、进制间转换

进制间转换需要了解每种进制数的表示方法以及位权的定义。以下提供进制间转换的示例代码。

十进制转其他进制:


function decimalToBinary(decimal) {
  let binary = '';
  while (decimal !== 0) {
    binary = (decimal % 2) + binary;
    decimal = Math.floor(decimal / 2);
  }
  return binary;
}

function decimalToOctal(decimal) {
  let octal = '';
  while (decimal !== 0) {
    octal = (decimal % 8) + octal;
    decimal = Math.floor(decimal / 8);
  }
  return octal;
}

function decimalToHex(decimal) {
  let hex = '';
  while (decimal !== 0) {
    let digit = decimal % 16;
    if (digit < 10) {
      hex = digit + hex;
    } else {
      hex = String.fromCharCode(digit + 55) + hex;
    }
    decimal = Math.floor(decimal / 16);
  }
  return hex;
}

其他进制转十进制:


function binaryToDecimal(binary) {
  let decimal = 0;
  for (let i = 0; i < binary.length; i++) {
    decimal += Number(binary[i]) * Math.pow(2, binary.length - i - 1);
  }
  return decimal;
}

function octalToDecimal(octal) {
  let decimal = 0;
  for (let i = 0; i < octal.length; i++) {
    decimal += Number(octal[i]) * Math.pow(8, octal.length - i - 1);
  }
  return decimal;
}

function hexToDecimal(hex) {
  let decimal = 0;
  for (let i = 0; i = '0' && digit = 'a' && digit = 'A' && digit <= 'F') {
      decimal += (digit.charCodeAt(0) - 55) * Math.pow(16, hex.length - i - 1);
    }
  }
  return decimal;
}

五、进制的应用

进制数广泛应用于计算机领域,如IP地址、MAC地址、文件权限等。

例如,在IP地址中,为了方便运算和保存,将四个八位的二进制数转换为十进制数表示。

以下是获取本机IP地址的示例代码:


const os = require('os');
const ifaces = os.networkInterfaces();

Object.keys(ifaces).forEach(function (ifname) {
  let alias = 0;
  ifaces[ifname].forEach(function (iface) {
    if ('IPv4' !== iface.family || iface.internal !== false) {
      return;
    }
    if (alias >= 1) {
      console.log(ifname + ':' + alias, iface.address);
    } else {
      console.log(ifname, iface.address);
    }
    ++alias;
  });
});

以上代码是使用Node.js获取本机IP地址的实现。获取到的地址为十进制表示。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/159846.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-20 00:16
下一篇 2024-11-20 00:16

相关推荐

  • Python符号定义和使用方法

    本文将从多个方面介绍Python符号的定义和使用方法,涉及注释、变量、运算符、条件语句和循环等多个方面。 一、注释 1、单行注释 # 这是一条单行注释 2、多行注释 “”” 这是一…

    编程 2025-04-29
  • Python语言数组从大到小排序符号的用法介绍

    当我们使用Python进行编程的时候,经常需要对数组进行排序从而使数组更加有序,而数组的排序方式有很多,其中从大到小排序符号是一种常见的排序方式。本文将从多个方面对Python语言…

    编程 2025-04-28
  • 手机怎样打出圆周率符号

    要在手机上输入圆周率符号,你可以使用以下几种方法: 一、使用系统输入法自带符号 很多手机系统自带符号输入功能,通过以下步骤可以快速输入圆周率符号: 1. 在需要输入的文本框中,切换…

    编程 2025-04-28
  • Python中积的符号:解析和用法

    Python中有很多符号,其中包括积的符号。在本文中,我们将详细介绍Python中积的符号的用法和解析。 一、公式表示 在Python中,积的符号可以用“*”表示。例如,表示8和5…

    编程 2025-04-28
  • Python合集符号全面解析

    Python是一门非常流行的编程语言,在其语法中有一些特殊的符号被称作合集符号,这些符号在Python中起到非常重要的作用。本文将从多个方面对Python合集符号进行详细阐述,帮助…

    编程 2025-04-28
  • 数学符号角度的读法

    数学符号是用来表示数学概念、关系和运算的工具。正确理解数学符号的意义对于学习数学、应用数学至关重要。本文将从多个方面介绍数学符号角度的读法。 一、基础符号 1、数学符号:&#822…

    编程 2025-04-27
  • 符号秩检验和秩和检验的比较

    本文将从以下几个方面介绍符号秩检验和秩和检验的比较,包括定义、假设条件、检验统计量、显著性水平等。 一、定义 符号秩检验和秩和检验都是非参数的假设检验方法,适用于两组独立样本比较差…

    编程 2025-04-27
  • Python取较大值的多方面

    Python是一款流行的编程语言,广泛应用于数据分析、科学计算、Web开发等领域。作为一名全能开发工程师,了解Python的取较大值方法非常必要。本文将从多个方面对Python取较…

    编程 2025-04-27
  • 故障树中未探明事件的图形符号

    故障树是一种可视化的分析工具,用于确定系统或过程中故障的原因和可能的根源。故障树中未探明事件的图形符号是指在分析中无法找到前驱事件的事件,本文将从多个方面对其进行详细阐述。 一、符…

    编程 2025-04-27
  • Python尖括号 – 解析Python中的符号

    Python尖括号是Python编程语言中的一个特殊符号,它在Python中具有多种功能和用途。本文将从多个方面介绍Python尖括号的用法和使用方法。 一、基本用法 在Pytho…

    编程 2025-04-25

发表回复

登录后才能评论