c++進制轉換_一文了解進制之間的原理和轉換

b8d4f5f2256e71dd20c14eac0bcdabe3.png

點擊這段文字:?獲取2020年,最強Python學習資料

進制這塊,可以做簡單的了解。生活中我們使用的數字都是十進制的,而二進制是機器能夠識別的最直接的語言。但是二進制又太大,記錄起來非常的不方便。所以通常會將二進制轉化為八進制或者十六進制。

日常生活中我們所說的數字 (十進制)在0~9之間,同理 二進制的范圍是0~1,八進制的范圍0~7,十六進制的范圍0~15。那問題來了,當超過9之后,十六進制該如何表示呢?答案是用a~f,表示對應的10~15

進制的表達

在Python中該如何表示每一種進制呢?

  • 默認輸入的數字為十進制
  • 以0b開頭的數字表示二進制
  • 以0o開頭的數字表示八進制
  • 以0x開頭的數字表示十六進制
#?普通的十進制
a?=?12
print(a)?#?12

#?0b表示二進制
b?=?0b100100?
print(b)?#?36

#?0o表示八進制
c?=?0o56
print(c)?#?46

#?0x表示十六進制
d?=?0x2a1
print(d)?#?673

進制之間的轉換

1、十進制轉二進制

將十進制數除2取余數,直到商為0時。

以12為例,

12?/?2?=?6??余?0?

6??/??2?=?3??余?0

3??/??2?=?1??余?1

1??/??2?=?0??余?1

從上到下取余數,因此,12 對應的 二進制 為 ?:1100

2、二進制轉十進制

把二進階按權展開,相加即可。如二進制位:1100,按照下面的格式展開

???0????0???1?????1

1\*2^0?1\*2^1?1\*2^2?1\*2^3?

0 ?* ?1*2^0 + 0 * 1*2^1 + 1 * ?1*2^2 ?+ 1 * 1*2^3 = 12

3、二進制與八進制轉換

將2進制從右到左的順序按照3位拆分,不足時 補0。例如二進制:1100可拆分成

001 100 ?然后按權展開組合起來即可。

即:

0*2^2 + 0 * 2 ^ 1 + 1 * 2 ^ 0 = 1

1*2^2 + ?0 * 2 ^ 1 ?+ ?0 * 2 ^ 0 ?= 4

因此對應的八進制為 14。

4、八進制轉二進制

通過對八進制除2取余數,

1的二進制為1 ,不夠3位補0,即001

4的二進制為100

因此八進制14轉二進制的結果 為:001100

事實上,日常中用到的主要就是二進制和十進制的轉換,其他了解一下就可以了。

在Python中,已經講各種進制的轉換進行了封裝,直接調用即可。

a?=?12
print(bin(a))?#?0b1100???十進制轉二進制
print(oct(a))?#?0o14??十進制轉八進制
print(hex(a))?#?0xc???十進制轉十六進制

#?二進制轉十進制
print(int('0b1100',?2))

#?八進制轉十進制
print(int('0o14',?8))

#?十六進制轉十進制
print(int('0xc',?16))

最后還是希望你們能給我點一波小小的贊或者在看~

如有文章對你有幫助,

“在看”和轉發是對我最大的支持

17eea706d5c7c60c3eb7c449137e8343.gif

關注Python極客專欄

3fe588275419220d4286af326a8a7fa1.png

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

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

相關文章

用HTML做一個簡單的web登錄頁面,簡單的JavaWeb注冊登錄案例

簡單的JavaWeb注冊登錄案例1.注冊頁面register.htmlregister姓名:電話:郵箱:qq:2.注冊案例實現程序register.java/*** 注冊案例實現程序* author lucky**/public class register extends HttpServlet {public void doGet(HttpServ…

一層循環時間復雜度_算法的時間與空間復雜度(一看就懂)

算法(Algorithm)是指用來操作數據、解決程序問題的一組方法。對于同一個問題,使用不同的算法,也許最終得到的結果是一樣的,但在過程中消耗的資源和時間卻會有很大的區別。那么我們應該如何去衡量不同算法之間的優劣呢&…

用ajax替換html代碼,替換Ajax響應一個div的內部HTML(Replace inner HTML of a div w

我試圖一些時間間隔后改變一個div的內部HTML。 我得到我想要使用Ajax正確的反應。 但無法取代內HTML的后,并用Ajax響應地選擇。 什么是錯我的代碼..HTML51 seconds ago58 seconds ago.....10 minute ago?查詢setInterval(function() {$( ".time" ).each(…

java 審批流_一文讀懂工作流

網上關于工作流引擎有比較多的簡介,也有很多工作流的實際應用場景。本文結合筆者多年對工作流的經驗來闡述一下對工作流的理解。一、什么是工作流?先貼上wiki百科對于工作流的定義工作流(Workflow),是對工作流程及其各…

html制作卡通圖案代碼,CSS畫的卡通動畫圖案

CSS語言:CSSSCSS確定* {padding: 0;margin: 0;}body {background: #26ad00;}.head {background: #ff8cb2;width: 70vw;height: 50vw;position: absolute;top: calc(50% - 25vw);left: calc(50% - 35vw);z-index: 2;border-radius: 90% 90% 80% 80% / 120% 120% 60% …

postgresql 查詢序列_時間序列數據庫(TSDB)初識與選擇

作者:碼哥字節 如需轉載聯系我的公眾號背景 這兩年互聯網行業掀著一股新風,總是聽著各種高大上的新名詞。大數據、人工智能、物聯網、機器學習、商業智能、智能預警啊等等。以前的系統,做數據可視化,信息管理,流程控制…

開發html,HTML開發基礎

常用標簽1、各種符號2、p和br3、a標簽4、H標簽5、select6、input:checkbox7、input:radio8、input:password9、input:button10、input:file11、textarea12、label13、ul or dl14、table15、fieldset16、form17、divHTML代碼演示html>頁面一這是div塊級標簽,占一行…

concurrenthashmap實現原理_Mybatis:PageHelper分頁插件源碼及原理剖析

PageHelper是一款好用的開源免費的Mybatis第三方物理分頁插件,其實我并不想加上好用兩個字,但是為了表揚插件作者開源免費的崇高精神,我毫不猶豫的加上了好用一詞作為贊美。原本以為分頁插件,應該是很簡單的,然而PageH…

計算機網絡dst,計算機網絡基礎課程—Socket接口

什么是TCP/IP------本課程的主要部分TCP/IP如何工作-----TCP/IP軟件結構與實現如何用TCP/IP-------TCP/IP應用程序編程接口前面說過,TCP/IP標準并不指定應用程序與TCP/IP協議軟件的接口,但并不是說沒有提供任何指導,首先,它指定了…

python輸入圓的半徑公式_[圖文]鐵路曲線正矢的計算公式

一、圓曲線正矢的計算1.1 圓曲線正矢的計算公式取圓曲線上兩點拉一直線,叫做弦。弦上任意點至曲線上的垂直距離叫矢或叫矢距。在弦中央點的矢距叫正矢(下圖)。AB一弦;AC、CB一半弦;CD一正矢;EF一矢距正矢計算公式為其中: f-正矢 C-弦長 R-半徑 式中單位均為m。公式用文字表示即…

2021高考成績查詢抖音,2021抖音很火的高考唯美的文案20個

1、用孜孜不倦去追求,拼搏的精神來鉆研,讓知識澆灌心田,用激情去迎接困難,用青春寫意一片贊嘆,祝愿大學生活充實飽滿,學富五車,才高八斗,開創美麗的明天。2、如食糖蜜心里甜&#xf…

docker 安裝nacos_康過來!Nacos配置和管理微服務的使用

Nacos 具有如下特性:服務發現和服務健康監測:支持基于DNS和基于RPC的服務發現,支持對服務的實時的健康檢查,阻止向不健康的主機或服務實例發送請求;動態配置服務:動態配置服務可以讓您以中心化、外部化和動態化的方式管…

HTML5中volume樣式自定義,html5中關于volume屬性的使用詳解

Audio對象屬性: volume 描述:設置或返回音頻的音量,取值范圍(0——1)下面是我做的音樂播放器如何調節音頻音量的代碼://增加切換音量事件(function(){var height $("#myAudio ul.control li.volume .alert-box .volume-wrap…

matlab中如何調用gpu進行并行計算_極致安卓-Termux/Aid learning開啟WebGL手機GPU并行計算...

在我的之前的測評中,我利用Termux和Aid Learning測試過基于C/C的openmp并行程序,基于Java的并行程序,還有基于MPI以及基于Java的分布式集群并行。但是很遺憾,一直無法成功開發基于OpenCL的GPU并行編程。這是主要是因為Android并沒…

python默認編碼方式_關于設置python默認編碼方式的問題

2019-8-27 07:45:36 本帖最后由 傻紙 于 2019-8-27 10:02 編輯 查了一會資料得出的結論是如果你用的是python3.x,那么就最好別去設置sys.defaultencoding或者sys.stdout.encoding 記住在需要編碼的時候用encode,解碼的時候decode就可以了。。。 這個問題…

計算機科學與技術是屬于什么學科,計算機科學與技術專業屬于什么大類 屬于哪個學科...

近日,有很多人咨詢小編計算機科學與技術專業屬于什么大類 屬于哪個學科?現在小編統一回復一下大家計算機科學與技術專業屬于工學類,下面是關于計算機科學與技術專業詳細的介紹。1計算機科學與技術專業門類及學科介紹專業名稱專業代碼門類學科…

matlab imread_MATLAB圖像處理:29:在幾何變換輸出中指定填充值

本示例說明如何指定imwarp執行幾何變換時使用的填充值。執行轉換時,輸出圖像中通常會有一些像素不屬于原始輸入圖像。必須為這些像素分配一些值,稱為填充值。默認情況下,imwarp將這些像素設置為零,并顯示為黑色。使用FillValues參…

小學生學計算機,學計算機對小學生的好處

內容提要:隨著計算機應用的日益社會化和家庭化,計算機在人們工作、學習和生活等各個方面正發揮著越來越重要的作用,而計算機應用基礎也相應成為現代社會人們必修的文化基礎課。現在的小學生將是未來的創新型人才,他們的計算機水平如何,直接關…

micopython 18b20_MicroPython控制8*8LED點陣顯示溫度

MicroPython顧名思義就是可以在單片機上跑的Python,借助Micro Python,用戶完全可以通過Python腳本語言實現硬件底層的訪問和控制,比如說控制LED燈泡、LCD顯示器、讀取電壓、控制電機、訪問SD卡等。目前支持MicroPython的開發板有好幾種&#…