日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

原码、反码、补码解析,保证一次搞懂

發布時間:2025/6/17 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 原码、反码、补码解析,保证一次搞懂 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

符號數

二進制符號數,其格式為

為了區別書寫表示的帶符號的二進制數數字系統中的帶符號二進制數,通常將用‘ + ’ ,‘ - ’ 表示正負的的二進制數稱為符號數的真值,而把符號和數值一起進行編碼的二進制數成為機器數。

常用的機器數就分為原碼、反碼、補碼

{[X1]真=?Xn?1Xn?2?X0X?1X?2?X?m[X2]真=+Xn?1Xn?2?X0X?1X?2?X?m\begin{cases} [X^1]_真 = -X_{n-1}X_{n-2}\dotsm X_0X_{-1}X_{-2}\dotsm X_{-m} \\ [X^2]_真 = +X_{n-1}X_{n-2}\dotsm X_0X_{-1}X_{-2}\dotsm X_{-m} \end{cases}{[X1]?=?Xn?1?Xn?2??X0?X?1?X?2??X?m?[X2]?=+Xn?1?Xn?2??X0?X?1?X?2??X?m??

原碼:

原碼:符號位加上真值的絕對值,符號位0表示正,首位1表示負

具體數值:

{[X1]原=0Xn?1Xn?2?X0X?1X?2?X?m[X2]原=1Xn?1Xn?2?X0X?1X?2?X?m\begin{cases} [X^1]_原 = 0X_{n-1}X_{n-2}\dotsm X_0X_{-1}X_{-2}\dotsm X_{-m} \\ [X^2]_原= 1X_{n-1}X_{n-2}\dotsm X_0X_{-1}X_{-2}\dotsm X_{-m} \end{cases}{[X1]?=0Xn?1?Xn?2??X0?X?1?X?2??X?m?[X2]?=1Xn?1?Xn?2??X0?X?1?X?2??X?m??

整數X:
[X]原={Xif(X≥0)2n+∣X∣if(?2n<X<0)[X]_原 = \begin{cases} X &{if } (X\ge0) \\ 2^n+|X| &{if } (-2_n<X<0) \end{cases}[X]?={X2n+X?if(X0)if(?2n?<X<0)?

小數X:
[X]原={Xif(X≥0)1+∣X∣if(?1<X<0)[X]_原 = \begin{cases} X &{if} (X\ge0) \\ 1+|X| &{if} (-1<X<0) \end{cases}[X]?={X1+X?if(X0)if(?1<X<0)?

反碼:

反碼:正數的反碼是其本身,負數的反碼在原碼的基礎上符號位不變,其余各位按位取反

{[X1]反=0X^n?1X^n?2?X^0X^?1X^?2?X^?m[X2]反=1X^n?1X^n?2?X^0X^?1X^?2?X^?m\begin{cases} [X^1]_反 = 0\hat X_{n-1}\hat X_{n-2}\dotsm \hat X_0\hat X_{-1}\hat X_{-2}\dotsm \hat X_{-m} \\ [X^2]_反= 1\hat X_{n-1}\hat X_{n-2}\dotsm \hat X_0\hat X_{-1}\hat X_{-2}\dotsm \hat X_{-m} \end{cases}{[X1]?=0X^n?1?X^n?2??X^0?X^?1?X^?2??X^?m?[X2]?=1X^n?1?X^n?2??X^0?X^?1?X^?2??X^?m??

具體數值:
整數X:
[X]反={Xif(X≥0)2n+1?1?∣X∣if(?2n<X<0)[X]_反=\begin{cases} X & {if} (X\ge0) \\ 2^ {n+1} -1 - |X|&{if} (-2_n \lt X<0) \end{cases}[X]?={X2n+1?1?X?if(X0)if(?2n?<X<0)?

小數:
[X]反={Xif(X≥0)2?2?m?∣X∣if(?1<X<0)[X]_反=\begin{cases} X&{if}(X\ge0) \\ 2-2^{-m} - |X| & {if}(-1\lt X<0) \end{cases}[X]?={X2?2?m?X?if(X0)if(?1<X<0)?

補碼:

補碼:正數的補碼是其本身,負數的補碼在原碼的基礎上符號位不變,其余各位按位取反再+1,也就是反碼+1,注意是最低位+1

{[X1]補=0X^n?1X^n?2?X^0X^?1X^?2?X^?m+X?m[X2]補=1X^n?1X^n?2?X^0X^?1X^?2?X^?m+X?m\begin{cases} [X^1]_補 = 0\hat X_{n-1}\hat X_{n-2}\dotsm \hat X_0\hat X_{-1}\hat X_{-2}\dotsm \hat X_{-m} + X_{-m}\\ [X^2]_補= 1\hat X_{n-1}\hat X_{n-2}\dotsm \hat X_0\hat X_{-1}\hat X_{-2}\dotsm \hat X_{-m} + X_{-m} \end{cases}{[X1]?=0X^n?1?X^n?2??X^0?X^?1?X^?2??X^?m?+X?m?[X2]?=1X^n?1?X^n?2??X^0?X^?1?X^?2??X^?m?+X?m??

具體數值:
整數X:
[X]補={Xif(X≥0)2n+1?∣X∣if(?2n<X<0)[X]_補=\begin{cases} X & {if} (X\ge0) \\ 2^ {n+1} - |X| &{if} (-2_n\lt X<0) \end{cases}[X]?={X2n+1?X?if(X0)if(?2n?<X<0)?

小數:
[X]補={Xif(X≥0)2?∣X∣if(?1<X<0)[X]_補=\begin{cases} X&{if}(X\ge0) \\ 2 - |X| & {if}(-1\lt X<0) \end{cases}[X]?={X2?X?if(X0)if(?1<X<0)?

總結

以上是生活随笔為你收集整理的原码、反码、补码解析,保证一次搞懂的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。