進制定義與轉換詳解

文章目錄

  • 📘 進制定義與轉換詳解
    • 一、進制的含義
    • 二、常見進制介紹
      • 1. 十進制(Decimal,Base-10)
      • 2. 二進制(Binary,Base-2)
      • 3. 八進制(Octal,Base-8)
      • 4. 十六進制(Hexadecimal,Base-16)
    • 三、進制之間的轉換
      • 1. 任意進制 → 十進制
        • 通用公式:
        • 示例:
      • 2. 十進制 → 任意進制
        • 方法:除基取余法(從下往上讀)
          • 示例:十進制 `123` → 二進制
          • 示例:十進制 `100` → 八進制
          • 示例:十進制 `123` → 十六進制
      • 3. 二進制與其他進制的快速轉換
        • a. 二進制 → 八進制
          • 示例:
        • b. 二進制 → 十六進制
          • 示例:
    • 四、負數的表示(以二進制為例)
      • 步驟:
        • 示例:-100 的二進制表示
    • 五、總結
  • 進制加減法
      • 進制基礎與加減法運算規則
        • 一、二進制(Binary)
        • 二、八進制(Octal)
        • 三、十進制(Decimal)
        • 四、十六進制(Hexadecimal)
      • 總結
    • 進制對照表

📘 進制定義與轉換詳解

一、進制的含義

進制,也稱為進位計數制,是一種人為定義的、帶進位的計數方法。每種進制都有其基數(Base),表示該進制下使用的不同數字個數。

  • X進制:每一位上的數字運算時都是逢X進一
    • 十進制:逢十進一
    • 二進制:逢二進一
    • 八進制:逢八進一
    • 十六進制:逢十六進一
    • ……

💡 小知識:也有不帶進位的計數法,如“正”字計數、結繩記事等,但進制是現代數學和計算機中廣泛使用的標準計數方式。


二、常見進制介紹

1. 十進制(Decimal,Base-10)

  • 基數:10
  • 符號:0 ~ 9
  • 權重:10的冪次方
  • 示例
    1234=1×103+2×102+3×101+4×1001234 = 1 \times 10^3 + 2 \times 10^2 + 3 \times 10^1 + 4 \times 10^0 1234=1×103+2×102+3×101+4×100

2. 二進制(Binary,Base-2)

  • 基數:2
  • 符號:0、1
  • 權重:2的冪次方
  • 用途:計算機底層表示數據的基本單位(0表示關,1表示開)
  • 示例
    1002=1×22+0×21+0×20=410100_2 = 1 \times 2^2 + 0 \times 2^1 + 0 \times 2^0 = 4_{10} 1002?=1×22+0×21+0×20=410?
  • 表示方式:前綴 0B
    int val = 0B100;  // 表示十進制4
    

3. 八進制(Octal,Base-8)

  • 基數:8
  • 符號:0 ~ 7
  • 權重:8的冪次方
  • 用途:早期計算機系統中常用,每個八進制位對應3個二進制位
  • 示例
    1238=1×82+2×81+3×80=8310123_8 = 1 \times 8^2 + 2 \times 8^1 + 3 \times 8^0 = 83_{10} 1238?=1×82+2×81+3×80=8310?
  • 表示方式:前綴 0
    int val = 0123;  // 表示十進制83
    

4. 十六進制(Hexadecimal,Base-16)

  • 基數:16
  • 符號:0 ~ 9 和 A ~ F(或 a ~ f),其中:
    • A = 10,B = 11,C = 12,D = 13,E = 14,F = 15
  • 權重:16的冪次方
  • 用途:常用于內存地址、顏色編碼等,每個十六進制位對應4個二進制位
  • 示例
    1a2b3c16=1×165+10×164+2×163+11×162+3×161+12×160=1715004101a2b3c_{16} = 1 \times 16^5 + 10 \times 16^4 + 2 \times 16^3 + 11 \times 16^2 + 3 \times 16^1 + 12 \times 16^0 = 1715004_{10} 1a2b3c16?=1×165+10×164+2×163+11×162+3×161+12×160=171500410?
  • 表示方式:前綴 0x
    int val = 0x1a2b3c;  // 表示十進制1715004
    

三、進制之間的轉換

1. 任意進制 → 十進制

通用公式:

設某進制數為 xyzw...N,其十進制值為:

Value=x×Bn?1+y×Bn?2+z×Bn?3+?+N×B0\text{Value} = x \times B^{n-1} + y \times B^{n-2} + z \times B^{n-3} + \cdots + N \times B^0 Value=x×Bn?1+y×Bn?2+z×Bn?3+?+N×B0

其中:

  • $ B $:進制基數
  • $ n $:數字位數
示例:
  • 二進制 0B100
    1×22+0×21+0×20=41 \times 2^2 + 0 \times 2^1 + 0 \times 2^0 = 4 1×22+0×21+0×20=4

  • 八進制 0123
    1×82+2×81+3×80=831 \times 8^2 + 2 \times 8^1 + 3 \times 8^0 = 83 1×82+2×81+3×80=83

  • 十六進制 0x1a2b3c
    1×165+10×164+2×163+11×162+3×161+12×160=17150041 \times 16^5 + 10 \times 16^4 + 2 \times 16^3 + 11 \times 16^2 + 3 \times 16^1 + 12 \times 16^0 = 1715004 1×165+10×164+2×163+11×162+3×161+12×160=1715004


2. 十進制 → 任意進制

方法:除基取余法(從下往上讀)

在這里插入圖片描述
在這里插入圖片描述

示例:十進制 123 → 二進制
123 ÷ 2 = 61 余 1
61  ÷ 2 = 30 余 1
30  ÷ 2 = 15 余 0
15  ÷ 2 = 7  余 1
7   ÷ 2 = 3  余 1
3   ÷ 2 = 1  余 1
1   ÷ 2 = 0  余 1

從下往上讀取余數:1111011,補全為8位:0B01111011

示例:十進制 100 → 八進制
100 ÷ 8 = 12 余 4
12  ÷ 8 = 1  余 4
1   ÷ 8 = 0  余 1

結果:0144

示例:十進制 123 → 十六進制
123 ÷ 16 = 7 余 11(B)
7   ÷ 16 = 0 余 7

結果:0x7b


3. 二進制與其他進制的快速轉換

a. 二進制 → 八進制
  • 原理:3位二進制 = 1位八進制(因為 23=82^3 = 823=8
  • 方法:從右往左每3位一組,不足補0,每組轉為八進制數
示例:
二進制:0B10100101011110011
分組:101 001 010 111 100 11(補0 → 011)
轉換:5   1   2   7   4   3
結果:0512743

在這里插入圖片描述

b. 二進制 → 十六進制
  • 原理:4位二進制 = 1位十六進制(因為 24=162^4 = 1624=16
  • 方法:從右往左每4位一組,不足補0,每組轉為十六進制數
示例:
二進制:0B00010101001010101010
分組:0001 0101 0010 1010 1010
轉換:1    5    2    A    A
結果:0x152AA

在這里插入圖片描述


四、負數的表示(以二進制為例)

在計算機中,負數使用補碼表示。

步驟:

  1. 求原碼:正數的二進制表示
  2. 求反碼:按位取反(符號位不變)
  3. 求補碼:反碼 + 1
示例:-100 的二進制表示
  1. 原碼:100 = 01100100(假設8位)
  2. 反碼:10011011
  3. 補碼:10011100

所以,-100 的二進制補碼表示為:0B10011100


五、總結

進制基數符號范圍表示前綴特點
十進制100~9日常使用
二進制20,10B計算機基礎
八進制80~70簡化二進制
十六進制160~9, A~F0x內存地址、顏色代碼

進制加減法

以下是對進制加減法相關內容的優化敘述,邏輯更清晰、結構更嚴謹:


進制基礎與加減法運算規則

在計算機科學和編程中,理解不同進制及其運算規則是非常重要的基礎知識。常見的進制包括二進制、八進制、十進制和十六進制。它們的核心區別在于所使用的數字范圍和進位規則。


一、二進制(Binary)
  • 表示方式:使用兩個數字 01 來表示數值。
  • 應用場景:計算機內部所有數據都以二進制形式存儲和處理。
  • 加法規則:逢二進一。
    例如:1 + 1 = 10
  • 減法規則:借一當二。
    例如:10 - 1 = 1

在這里插入圖片描述
在這里插入圖片描述


二、八進制(Octal)
  • 表示方式:使用八個數字 07 來表示數值。
  • 加法規則:逢八進一。
    例如:7 + 1 = 10
  • 減法規則:借一當八。
    例如:10 - 1 = 7

在這里插入圖片描述
在這里插入圖片描述


三、十進制(Decimal)
  • 表示方式:使用十個數字 09 來表示數值。
  • 加法規則:逢十進一。
  • 減法規則:借一當十。

四、十六進制(Hexadecimal)
  • 表示方式:使用數字 09 和字母 AF 來表示數值。
    其中:
    • A = 10
    • B = 11
    • C = 12
    • D = 13
    • E = 14
    • F = 15
  • 字母說明:不區分大小寫,ABCDEF 也可以寫作 abcdef
  • 加法規則:逢十六進一。
    例如:F + 1 = 10
  • 減法規則:借一當十六。
    例如:10 - 1 = F

在這里插入圖片描述
在這里插入圖片描述


總結

不同進制的加減法遵循相同的邏輯:

  • 加法:當前位滿“基數”就向前一位進一;
  • 減法:當前位不夠減時,向高位借一,相當于借了“基數”。

掌握這些規則,有助于理解數據在計算機中的表示和處理方式,是學習編程和計算機系統的重要基礎。

進制對照表

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/90679.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/90679.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/90679.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【安卓筆記】用MVC、MVP、MVVM來實現井字棋案例

0. 環境:電腦:Windows10Android Studio: 2024.3.2編程語言: JavaGradle version:8.11.1Compile Sdk Version:35Java 版本:Java111. 首先、簡單實現井字棋的功能。功能拆解:1. 棋盤為3x32. 點擊棋盤button&a…

【洛谷】單向鏈表、隊列安排、約瑟夫問題(list相關算法題)

文章目錄單向鏈表題目描述題目解析代碼隊列安排題目描述題目解析代碼約瑟夫問題題目描述題目解析代碼單向鏈表 題目描述 題目解析 這道題因為有大量的任意位置插入刪除,所以肯定不能用數組,用鏈表是最合適的,而在算法競賽通常都用靜態鏈表&a…

當人機交互邁向新紀元:腦機接口與AR/VR/MR的狂飆之路

從手機到 “頭盔”:交互終端的變革猜想??在當今數字化時代,智能手機無疑是我們生活中不可或缺的一部分。它集通訊、娛樂、辦公等多種功能于一身,成為了人們與外界交互的主要窗口。然而,隨著科技的飛速發展,智能手機作…

InfluxDB HTTP API 接口調用詳解(二)

實際應用案例演示 1. 數據寫入案例 假設在一個物聯網設備數據采集場景中,有多個傳感器設備持續采集環境的溫度和濕度數據。我們以 Python 語言為例,使用requests庫來調用 InfluxDB 的 Write 接口將數據寫入 InfluxDB。 首先,確保已經安裝了…

世運會線上知識競賽答題pk小程序怎么做

隨著2025年成都世界運動會的來臨,越來越多的企事業單位組織員工進行線上知識競賽,那么答題PK小程序該怎么做,接下來我們來一一分析: 世運會線上知識競賽答題pk小程序怎么做一、答題功能:支持多種題型,如選擇…

Java畢業設計 | 基于微信小程序的家校互動作業管理系統(Spring Boot+Vue.js+uni-app+AI,附源碼+文檔)

Java畢業設計 | 基于微信小程序的家校互動作業管理系統(Spring BootVue.jsuni-app,附源碼文檔)🎯 畢業設計私人教練 專注計算機畢設輔導第 6 年,累計 1v1 帶飛 800 同學順利通關。從選題、開題、代碼、論文到答辯&…

CentOS8 使用 Docker 搭建 Jellyfin 家庭影音服務器

CentOS8 使用 Docker 搭建 Jellyfin 家庭影音服務器 一、前言 由于 Jellyfin 的 GPL 協議和 Intel 的 media-driver (iHD) Linux 驅動(部分開源)在協議上不兼容的緣故,Jellyfin 官方的 Docker 鏡像:jellyfin/jellyfin 并不包含 …

PyTorch武俠演義 第一卷:初入江湖 第4章:損失玉佩的評分風波

第一卷:初入江湖 第4章:損失玉佩的評分風波比武開幕 晨鐘響徹山谷,PyTorch派三年一度的"模型比武大會"正式開始。各分舵弟子列隊入場,林小碼跟在Tensor大師身后,眼睛瞪得溜圓——只見: "卷積…

HttpServletRequestWrapper存儲Request

HTTP請求的輸入流只能被讀取一次,再想獲取就獲取不到了,那有什么方法可以緩存呢,我們可以自定義一個HttpServletRequest,或者是想在請求參數中統一添加或刪除參數也可以使用此類進行改造,然后通過過濾器繼續向下流轉。…

算法:數組part02: 209. 長度最小的子數組 + 59.螺旋矩陣II + 代碼隨想錄補充58.區間和 + 44. 開發商購買土地

算法:數組part02: 209. 長度最小的子數組 59.螺旋矩陣II 代碼隨想錄補充58.區間和 44. 開發商購買土地 209. 長度最小的子數組題目:https://leetcode.cn/problems/minimum-size-subarray-sum/description/ 文章講解:https://programmercarl…

Spring 核心知識點梳理 1

目錄 Spring Spring是什么? Spring中重要的模塊 Spring中最重要的就是IOC(控制反轉)和AOP(面向切面編程) 什么是IOC DI和IOC之間的區別 為什么要使用IOC呢? IOC的實現機制 什么是AOP Aop的核心概念 AOP的環繞方式 AOP發生的時期 AOP和OOP的…

Kafka運維實戰 07 - kafka 三節點集群部署(混合模式)(KRaft 版本3.7.0)

目錄環境準備主機準備補充說明JDK安裝 (三臺主機分別執行)下載jdkjdk安裝kafka 部署(三臺主機分別執行)kafka 下載kafka 版本號結構解析kafka 安裝下載和解壓安裝包(3臺主機都執行)配置 server.properties (KRaft 模式)192.168.37.10192.168.37.11192.16…

linux內核與GNU之間的聯系和區別

要理解操作系統(如 GNU/Linux)的組成,需要明確 內核(Kernel) 和 GNU 工具鏈 各自的功能,以及它們如何協作構成完整的操作系統。以下是詳細分析:1. 內核(Kernel)的功能 內…

文件包含學習總結

目錄 漏洞簡介 漏洞原理 漏洞分類 漏洞防御 漏洞簡介 程序開發人員一般會把重復使用的函數寫到單個文件中,需要使用某個函數時直接調用此文件,而無需再次編寫,這種文件調用的過程一般被稱為文件包含。程序開發人員一般希望代碼更靈活&…

TQZC706開發板教程:創建PCIE項目

本例程基于zc706開發板,使用xdma核創建PCIE項目,最終實現插入主機可識別出Xilinx設備。在vivado中創建一個空的706項目。創建完成后添加IP核-->搜索xdma-->雙擊打開配置。添加XDMA核如下所示basic配置peic id中設置設備號等信息,這里保…

科技賦能景區生.態,負氧離子氣象監測站筑牢清新防線

負氧離子氣象監測站,如同景區空氣質量的堅固防線,默默守護著每一寸土地的清新。?它以精準的監測能力為防線基石。借助 “吸入式電容收集法”,能敏銳捕捉空氣中負氧離子的蹤跡,精準測量其濃度,同時將溫度、濕度、PM2.5…

AMD官網下載失敗,不讓賬戶登錄下載

別使用163郵箱 使用QQ郵箱,然后用GPT生成一個外國,比如日本的地區信息填上去就可以下載了

Elasticsearch-8.17.0 centos7安裝

下載鏈接 https://www.elastic.co/downloads/past-releases/elasticsearch-8-17-0 https://www.elastic.co/downloads/past-releases/logstash-8-17-0 https://www.elastic.co/cn/downloads/past-releases/kibana-8-17-0https://artifacts.elastic.co/downloads/elasticsearch/…

windows下SAS9.4軟件下載與安裝教程

SAS 9.4是SAS公司推出的一款功能強大的統計分析軟件,廣泛應用于數據分析、商業智能、預測分析、數據挖掘及統計建模等多個領域。數據處理與管理能力:SAS 9.4支持多種數據格式的導入導出,包括JSON、XML等,便于處理來自Web和API的數…

MyBatis-Plus極速開發指南

MyBatis-Plus簡介MyBatis-Plus 是一個 MyBatis 的增強工具,在 MyBatis 的基礎上只做增強不做改變,簡化開發,提高效率。它提供了以下主要特性:無侵入:只做增強不做改變,引入它不會對現有工程產生影響強大的 …