c語言求補碼的函數(shù) c語言 求補碼

求數(shù)的補碼 c語言中

簡單的位運算就可以了

瀘州網站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網頁設計、網站建設、微信開發(fā)、APP開發(fā)、成都響應式網站建設公司等網站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)公司2013年至今到現(xiàn)在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選成都創(chuàng)新互聯(lián)公司。

#include stdio.h

void printBin(int num){

int i,k=31;

for(i=0;i32;i++){

printf("%d",(numk)1);//移位并輸出

k--;

}

printf("\n");

}

int main(int argc, char* argv[])

{

int num;

printf("Please input a number, I will tell you what it really is:");

scanf("%d",num);

printf("It is binary display is:");

printBin(num);

return 0;

}

c補碼的代碼寫法

c語言補碼的表示方法是:正數(shù)的補碼就是其本身,負數(shù)的補碼是在其原碼的基礎上,符號位不變,其余各位取反,最后+1 (即在反碼的基礎上+1)。

[+1] = [00000001](原碼) = [00000001](反碼) = [00000001](補碼) [-1] = [10000001](原碼) = [11111110](反碼) = [11111111](補碼) 對于負數(shù),補碼表示方式也是人腦無法直觀看出其數(shù)值的。通常也需要轉換成原碼在計算其數(shù)值。 一、原碼 求原碼:X≥0,則符號位為0,其余照抄; X≤0,則符號位為1,其余照抄。 【例1】X=+1001001 [X]原 = 01001001 【例2】X=-1001001 [X]原 = 11001001 二、反碼 求反碼:若X≥0,符號位為0,其余照抄; 若X≤0,符號位為1,其余按位取反。 【例3】X=+1001001 [X]反 = 01001001 【例4】X=-1001001 [X]反 = 10110110 三、補碼 求補碼:若X≥0,符號位為0,其余照抄; 若X≤0,符號位為1,其余取反后,最低位加1。 【例5】X=+1001001 [X]補 = 01001001 【例6】X=-1001001 [X]補 = 10110111

C語言寫一函數(shù):給出一個數(shù)的原碼,得到該數(shù)的補碼

0100000是八進制數(shù)。即二進制數(shù):1000 0000 0000 0000。

z=value0100000;//意義就是取value的最高位。

if(z==0100000)//如果最高位是1,即為負數(shù),需要求補

z=~value+1;//求補,即取反+1

else

z=value;

標題名稱:c語言求補碼的函數(shù) c語言 求補碼
URL地址:http://muchs.cn/article36/hgscpg.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供品牌網站建設網站設計公司、微信公眾號、標簽優(yōu)化網站內鏈云服務器

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網頁設計公司