1.178 轉2,8,16;
178轉2步驟:
178除2得89餘0;
89除2得44餘1;
44除2得22餘0;
22除2得11餘0;
11除2得5餘1;
5除2得2餘1;
2除2得1餘0;
over,最終結果為:10110010
178轉8步驟:
178除8得22餘2;
22除8得2餘6;
over,最終結果:0262
178轉16步驟:
178除16得b餘2;
over,最終結果:0xb2
還有小數的轉換方法:
十進位制小數轉換為二進位制的方法是乘以2取整,如:
0.625*2 = 1.25 取整 1
0.25*2 = 0.5 取整0
0.5*2 = 1 取整1
(0.625)10 = (0.101)2
(0.25)10 = (0.01)2
(0.5)*2 = (0.1)2
課件習題:
指定字母a,輸出小寫。asci碼中,小寫比大寫大32
#include
void main(){
char c1 = 'a';
char c2 = c1 + 32;
printf("%c\n",c2); //輸出小寫字母
printf("%d",c2); //輸出小寫字母的ascii碼
getchar();
原始碼,反碼,補碼:正整數的三個碼都是一樣的,負數的反碼是原始碼取反,補碼是末位補1.
用二進位制表示帶符號的數值時,最高位是符號位,0代表正,1代表負。
乙個int型數值有4個位元組,一共32位,去掉最高位上的佔位符,數值位還有31位,即數值位的最高位是2^30次方,所以正數一側可以表示的最高位是0111 1111 1111 1111 1111 1111 1111 1111就是2^31-1。負數部分因為反碼末位要補1,所以1000 0000 0000 0000 0000 0000 0000 0000才是負數一側的最小值,即2^32,比正數部分多1.其他位元組的帶符號的字元取值方式與之相同。
Golang 進製 原始碼反碼補碼 位運算
對於整數,有四種表示方式 1 二進位制 0,1 滿 2 進 1。在 golang 中,不能直接使用二進位制來表示乙個整數,它沿用了 c 的特點。2 十進位制 0 9 滿 10 進 1。3 八進位制 0 7 滿 8 進 1.以數字 0 開頭表示。4 十六進製制 0 9 及 a f,滿 16 進 1.以...
C語言進製之間的轉換(原始碼)
以下 中提供兩個函式,用於將十進位制轉換和其他進製和其他進製轉換為十進位制 info 提供2 8 10 16進製制之間相互轉換的兩個函式 正整數 更新日期 2020.2.23 include include include include num為要轉換的十進位制數,format是要轉換的目標進製,...
二進位制的原始碼 反碼及補碼
關於計算機的原始碼 反碼 補碼其實都是越搞越複雜,聽課聽了很久後逛論壇發現乙個帖子寫的很好 但是不記得鏈結了 反正大致意思就是最開始 就沒有原始碼反碼補碼的概念,計算機實際上是不會做減法運算的,他所有的計算都是基於加法的,最開始的計算機就是加法機 做的減法運算都是 變成了加上乙個數字的負數,然而計算...