[計算機科學#4]:二進制如何塑造數字世界(0和1的力量)

[LOGO]:CoreKSets

? ? ? ? ? ?【核知坊】:釋放青春想象,碼動全新視野。? ? ? ? ??

? ? ? ? ? ? 我們希望使用精簡的信息傳達知識的骨架,啟發創造者開啟創造之路!!!? ? ? ? ??


內容摘要?二進制是計算機世界的基石,數學是世界的基石(dog)。本文將簡要介紹二進制基本運算,布爾運算,移位運算等,介紹了使用數字對事物進行編碼表示。

關鍵詞:二進制 ?二進制運算 ?二進制編碼


其他相關文章:

[計算機科學#3]:布爾邏輯 (計算機數學基礎)-CSDN博客

[計算機科學#1]:計算機的前世今生,從算盤到IBM的演變之路-CSDN博客

[計算機科學#2]:從繼電器到晶體管的電子計算機發展史(龐然大物的進化)-CSDN博客

1.二進制運算


二進制與十進制之間的關系已經在上一篇文章講解過,本段內容將介紹二進制運算法則。

1.1 基礎運算

1.1.1 加法
  • 0 + 0 = 0

  • 0 + 1 = 1

  • 1 + 0 = 1

  • 1 + 1 = 10(逢二進一)

1.1.2 減法
  • 0 - 0 = 0

  • 0 - 1 =-1

  • 1 - 0 = 1

  • 1 - 1 = 0

1.1.3 乘法
  • 0 × 0 = 0

  • 0 × 1 = 0

  • 1 × 0 = 0

  • 1 × 1 = 1

1.1.4 除法

二進制除法類似于十進制除法,但更簡單。基本規則是逐位相除,直到余數小于除數。

1011 ÷ 10 = 101...1 (11 ÷ 2 = 5...1)

1.2 邏輯(布爾)運算

1.2.1 邏輯與(AND)
  • 0 AND 0 = 0

  • 0 AND 1 = 0

  • 1 AND 0 = 0

  • 1 AND 1 = 1

1.2.2 邏輯或(OR)
  • 0 OR 0 = 0

  • 0 OR 1 = 1

  • 1 OR 0 = 1

  • 1 OR 1 = 1

1.2.3 邏輯非(NOT)
  • NOT 0 = 1

  • NOT 1 = 0

1.2.4 邏輯異或(XOR)
  • 0 XOR 0 = 0

  • 0 XOR 1 = 1

  • 1 XOR 0 = 1

  • 1 XOR 1 = 0

1.3 移位運算

1.3.1 左移(<<), 補0

左移一位相當于乘以2

?1011 << 1 = 10110
1.3.2 右移(>>)

右移一位相當于除以2(取整)

?1011 >> 1 = 101

1.4 原碼|反碼|補碼

1.4.1 原碼

原碼是計算機中表示整數的一種最簡單的方式,它直接用二進制表示數值的絕對值,并在最高位用一個符號位表示正負。

符號位:0表示正數;1表示負數;數值位,直接表示數值的絕對值。有兩個表示零的值:00000000(正零)和 10000000(負零)。

1.4.2 反碼

反碼是對原碼的一種改進,主要用于簡化加法運算。反碼的計算方法如下:

正數的反碼:與原碼相同。

負數的反碼:將原碼的數值位取反(0變1,1變0),符號位保持不變。

仍然有兩個表示零的值:00000000(正零)和 11111111(負零)。

1.4.3 補碼

補碼是現代計算機中表示有符號整數的最常用方式。補碼的計算方法如下:

正數的補碼:與原碼相同。

負數的補碼:負數的補碼是其反碼加1。

只有一個表示零的值:00000000

2.常見計算機存儲單位


在計算機中的數據的底層都是二進制,為了估計數據量的大小,于是規定了以下單位:

單位簡稱換算關系
bit1 bit
字節byte基本單位 8 bits
千字節KB1 KB = 1024 bytes
兆字節MB1 MB = 1024 KB = 1,048,576 bytes
吉字節GB1 GB = 1024 MB = 1,073,741,824 bytes
太字節TB1 TB = 1024 GB = 1,099,511,627,776 bytes
拍字節PB1 PB = 1024 TB = 1,125,899,906,842,624 bytes
艾字節EB1 EB = 1024 PB = 1,152,921,504,606,846,976 bytes

3.編碼(數字標記)


????????為什么需要編碼?世界上的事物錯綜復雜,數量龐大,為了更好的在計算機中區分事物,我們使用數字對每個事物進行標記,這個標記的過程就叫做編碼。例如一個在上課的教室里有1名教師,30名學生。在計算機表格中我們可以直接為每個人分配一個數,由于人數是有限的,只需要31個數就能對所有人進行標記。這個數可以像一個表格:

二進制序號人物描述
000教師
001學生A
010學生B
011學生C
100學生D
101學生E
110學生F

4.Ascii碼對照表


????????ASCII碼(美國信息交換標準代碼)是一個基于英文字符的編碼系統,用于將字符(字母、數字、符號等)映射為二進制數。以下是ASCII碼表的部分內容,展示了一些常用的字符及其對應的十進制和二進制表示,總共128個字符。

十進制二進制字符十進制二進制字符十進制二進制字符
000000000NUL3200100000空格6401000000@
100000001SOH3300100001!6501000001A
200000010STX3400100010"6601000010B
300000011ETX3500100011#6701000011C
400000100EOT3600100100$6801000100D
500000101ENQ3700100101%6901000101E
600000110ACK3800100110&7001000110F
700000111BEL3900100111'7101000111G
800001000BS4000101000(7201001000H
900001001HT4100101001)7301001001I
1000001010LF4200101010*7401001010J
1100001011VT4300101011+7501001011K
1200001100FF4400101100,7601001100L
1300001101CR4500101101-7701001101M
1400001110SO4600101110.7801001110N
1500001111SI4700101111/7901001111O
1600010000DLE480011000008001010000P
1700010001DC1490011000118101010001Q
1800010010DC2500011001028201010010R
1900010011DC3510011001138301010011S
2000010100DC4520011010048401010100T
2100010101NAK530011010158501010101U
2200010110SYN540011011068601010110V
2300010111ETB550011011178701010111W
2400011000CAN560011100088801011000X
2500011001EM570011100198901011001Y
2600011010SUB5800111010:9001011010Z
2700011011ESC5900111011;9101011011[
2800011100FS6000111100<9201011100\
2900011101GS6100111101=9301011101]
3000011110RS6200111110>9401011110^
3100011111US6300111111?9501011111_

5.Unicode 編碼


????????Unicode 是一種國際通用的字符編碼標準,旨在為世界上所有語言的字符提供統一的編碼方案。它解決了傳統編碼(如ASCII、ISO-8859-1等)在處理多語言文本時的局限性,能夠支持多種語言、符號和表情等。

Unicode 有多種編碼形式,常見的有:

  • UTF-8:可變長編碼,用1到4個字節表示一個字符。兼容ASCII,廣泛用于互聯網和文件存儲。

  • UTF-16:可變長編碼,用2或4個字節表示一個字符。在某些操作系統和編程語言中廣泛使用。

  • UTF-32:固定長度編碼,用4個字節表示一個字符。簡單直接,但占用空間較大。

十六進制編碼字符描述十六進制編碼字符描述
U+0020空格U+00300數字0
U+0021!感嘆號U+00311數字1
U+0022"雙引號U+00322數字2
U+0023#井號U+00333數字3
U+0024$美元符號U+00344數字4
U+0025%百分號U+00355數字5
U+0026&與號U+00366數字6
U+0027'單引號U+00377數字7
U+0028(左括號U+00388數字8
U+0029)右括號U+00399數字9
U+002A*星號U+003A:冒號
U+002B+加號U+003B;分號
U+002C,逗號U+003C<小于號
U+002D-減號U+003D=等號
U+002E.句號U+003E>大于號
U+002F/斜杠U+003F?問號
U+00300數字0U+0040@At符號
U+00311數字1U+0041A大寫字母A
U+00322數字2U+0042B大寫字母B
U+00333數字3U+0043C大寫字母C
U+00344數字4U+0044D大寫字母D
U+00355數字5U+0045E大寫字母E
U+00366數字6U+0046F大寫字母F
U+00377數字7U+0047G大寫字母G
U+00388數字8U+0048H大寫字母H
U+00399數字9U+0049I大寫字母I
U+0040@At符號U+004AJ大寫字母J
U+0041A大寫字母AU+004BK大寫字母K
U+0042B大寫字母BU+004CL大寫字母L
U+0043C大寫字母CU+004DM大寫字母M
U+0044D大寫字母DU+004EN大寫字母N
U+0045E大寫字母EU+004FO大寫字母O
U+0046F大寫字母FU+0050P大寫字母P
U+0047G大寫字母GU+0051Q大寫字母Q
U+0048H大寫字母HU+0052R大寫字母R
U+0049I大寫字母IU+0053S大寫字母S
U+004AJ大寫字母JU+0054T大寫字母T
U+004BK大寫字母KU+0055U大寫字母U
U+004CL大寫字母LU+0056V大寫字母V
U+004DM大寫字母MU+0057W大寫字母W
U+004EN大寫字母NU+0058X大寫字母X
U+004FO大寫字母OU+0059Y大寫字母Y
U+0050P大寫字母PU+005AZ大寫字母Z
U+0051Q大寫字母QU+005B[左方括號
U+0052R大寫字母RU+005C\反斜杠
U+0053S大寫字母SU+005D]右方括號
U+0054T大寫字母TU+005E^上箭頭
U+0055U大寫字母UU+005F_下劃線
U+0056V大寫字母VU+0060`重音符
U+0057W大寫字母WU+007B{左大括號

文章總結


????????本文主要介紹了計算機中二進制基本運算規則,常見的計算機存儲單位,編碼方式。

????????感謝閱覽,如果你喜歡該內容的話,可以點贊,收藏,轉發。由于 Koro 能力有限,有任何問題請在評論區內提出,Koro 看到后第一時間回復您!!!


其他精彩內容:


參考內容:

Crash Course Computer Science(Y-T)????????

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

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

相關文章

JUC中各種鎖機制的應用和原理及死鎖問題定位

JUC中各種鎖機制的應用和原理及死鎖問題定位 在互聯網大廠Java求職者的面試中&#xff0c;經常會被問到關于JUC&#xff08;Java Util Concurrency&#xff09;中的各種鎖機制及其應用和原理的問題。本文通過一個故事場景來展示這些問題的實際解決方案。 第一輪提問 面試官&…

配置Ubuntu18.04中的Qt Creator為中文(圖文詳解)

配置Qt Creator為中文 1、前言2、先設置Ubuntu系統語言為中文3、配置Qt Creator中文環境2.1 IBus輸入法&#xff08;方法一&#xff09;2.2、測試IBus輸入法2.21IBus輸入法終端中測試2.2.2IBus輸入法Qt Creator中測試 2.3、Fcitx輸入法&#xff08;方法二&#xff09;2.3.1安裝…

高性能服務器配置經驗指南3——安裝服務器可能遇到的問題及解決方法

文章目錄 1、重裝系統后VScode遠程連接失敗問題2、XRDP連接黑屏問題1. 打開文件2. 添加配置3. 重啟xrdp服務 3、VScode遠程免密連接問題4、Vim編輯文件時出現不同用戶沖突編輯的問題 在完成 服務器基本配置和 深度學習環境準備后&#xff0c;大家應該就可以正常使用服務器了&…

PyQt6基礎_QThread

目錄 前置 代碼&#xff1a; 運行 正常運行 QThread運行報錯 視頻 前置 1 PySide6.QtCore.QThread - Qt for Python QThread官方文檔 2 長時間任務可以放到QThread中執行&#xff0c;避免占用主線程導致界面卡頓無法操作 代碼&#xff1a; import traceback,sys fro…

Spring Boot 應用運行指南

&#x1f680; Spring Boot 應用運行指南 ?? 使用 Maven &#x1f527; 運行命令 $ mvn spring-boot:run? 啟動效果 . ____ _ __ _ _/\\ / ____ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | _ | _| | _ \/ _ | \ \ \ \\\/ ___)| |_)| | | | | || (_…

jeecgboot 3.8.0 集成knife4j問題一文解決

問題描述: ? 在cloud環境下,若應用系統配置了context-path,則無法通過網關進入后臺接口管理系統 原因分析: ? 查看請求信息發現少拼接了系統的context-path,導致無法正確請求到數據。直接使用正確的地址可以正常通過網關訪問。故此確定為集成knife4j的問題。 解決辦法…

【Flutter】Flutter + Unity 插件結構與通信接口封裝

關聯文檔&#xff1a;【方案分享】Flutter Unity 跨平臺三維渲染架構設計全解&#xff1a;插件封裝、通信機制與熱更新機制—— 支持 Android/iOS/Web 的 3D 內容嵌入與遠程資源管理&#xff0c;助力 XR 項目落地 —— 支持 Android/iOS/Web 的 3D 內容嵌入與遠程資源管理&…

推薦 1 款 9.3k stars 的全景式開源數據分析與可視化工具

Orama 是一個開源的數據分析與可視化項目&#xff0c;由askorama團隊開發和維護。該項目旨在為用戶提供一套強大而易用的工具集&#xff0c;幫助用戶輕松處理和理解大規模數據&#xff0c;通過創建交互式且引人入勝的數據可視化圖表&#xff0c;揭示隱藏在數據背后的深層次洞察…

關于windows API 的鍵鼠可控可測

相關函數解釋 GetAsyncKeyState 是 Windows API 中的一個函數&#xff0c;用于判斷某個虛擬鍵是否被按下。GetAsyncKeyState(VK_ESCAPE) 專門用于檢測 Esc 鍵的狀態。下面為你詳細介紹其用法&#xff1a; 函數原型 cpp SHORT GetAsyncKeyState( int vKey ); 參數 vKey&a…

vs 安裝完番茄助手visual assist 后 菜單欄不顯示

vs 安裝完番茄助手visual assist 后 菜單欄不顯示 出現原因解決辦法&#xff1a; 出現原因 vs安裝完番茄助手后&#xff0c;不顯示。主要原因是之前安裝過&#xff0c;但是試用過期了&#xff0c;卸載后重新安裝然后替換破解版的dll 導致的。 解決辦法&#xff1a; 關閉vs軟件…

論文導讀 - 基于邊緣計算、集成學習與傳感器集群的便攜式電子鼻系統

基于邊緣計算、集成學習與傳感器集群的便攜式電子鼻系統 原論文地址&#xff1a;https://www.sciencedirect.com/science/article/abs/pii/S0925400522015684 引用此論文&#xff08;GB/T 7714-2015&#xff09;&#xff1a; WANG T, WU Y, ZHANG Y, et al. Portable electr…

EasyCVR視頻匯聚平臺助力大型生產監控項目攝像機選型與應用

一、方案背景 在300路大型生產監控項目中&#xff0c;由于生產環境復雜多樣&#xff0c;涵蓋室外廠區、大型車間、室內辦公區域等不同場景&#xff0c;單一類型的攝像機難以滿足全方位、精細化的監控需求。EasyCVR作為一款功能強大的視頻融合管理平臺&#xff0c;具備靈活的視…

測試用例介紹

文章目錄 一、測試用例基本概念1.1 測試用例基本要素 二、測試用例的設計方法2.1 基于需求的設計方法2.2 等價類2.3 邊界值2.4 錯誤猜測法2.6 場景設計法2.7 因果圖2.5 正交排列 三、綜合&#xff1a;根據某個場景去設計測試用例&#xff08;萬能公式&#xff09;四、如何使用F…

基于藍牙Beacon人員導航方案

基于藍牙Beacon人員導航方案 一、室內定位市場痛點與技術選擇 大型商場&#xff08;單層超2萬㎡&#xff09;和醫院&#xff08;科室超200個&#xff09;的復雜空間中&#xff0c;傳統GPS信號衰減超90%&#xff0c;用戶平均尋路耗時10-15分鐘&#xff0c;30%購物決策因“找店…

使用vue3 腳手架創建項目

1.創建項目 并 運行 1.1 創建項目 vue create abcd 1.2 運行 創建好項目后&#xff0c;命令行會提示你運行項目 npm run serve 2.介紹各個目錄 node_modules : 項目依賴包&#xff0c;其中包括很多基礎依賴&#xff0c;自己也可以根據需要安裝其他依賴 assets文件夾&a…

跨語言哈希一致性:C# 與 Java 的 MD5 之戰?

在跨平臺或異構系統集成的場景中&#xff0c;我們經常需要在不同的編程語言之間交換數據或驗證數據一致性。MD5 作為一種廣泛使用的哈希算法&#xff0c;就常常扮演著生成唯一標識或校驗數據完整性的角色。然而&#xff0c;不少開發者可能會遇到這樣一個令人困惑的問題&#xf…

基于RuoYi的WMS倉庫管理系統源碼級解決方案

基于RuoYi的WMS倉庫管理系統源碼級解決方案 項目地址 一、系統簡介 WMS&#xff08;Warehouse Management System&#xff09;倉儲管理系統是現代物流管理的核心系統&#xff0c;通過對倉庫業務的精細化管理&#xff0c;實現入庫、出庫、庫存等環節的高度自動化和智能化。 系…

研究:大模型輸出一致性:確定性與隨機性的場景化平衡

大模型在相同輸入下的輸出是否一致,本質上取決于其設計目標、任務性質以及技術實現方式。這一問題需要從技術原理、應用場景、用戶需求三個維度進行深度分析: 一、技術實現:確定性與隨機性的平衡 模型架構的確定性基礎 大模型的核心參數(如權重矩陣)在訓練完成后是固定的…

青年座談會的讀書匯報

今天&#xff0c;單位組織了一個五四青年座談會&#xff0c;我們室由于大家都在出差忙之類的&#xff0c;我必須要參加&#xff0c;還要我做一個匯報&#xff0c;我一新來的還沒深入到研發工作中&#xff0c;于是決定寫了一篇簡單的讀書筆記&#xff0c;再用deepseek潤色一下&a…

RabbitMQ安裝流程(Windows環境)

安裝資料鏈接&#xff1a;https://download.csdn.net/download/ly1h1/90705840?spm1001.2014.3001.5503 代碼案例鏈接&#xff1a;https://download.csdn.net/download/ly1h1/90706521 1.下載依賴&#xff0c;Downloads - Erlang/OTP 2.下載RabbitMQ安裝包&#xff0c;In…