當把乙個char型別轉換成int型的時候計算機裡究竟而發生了什麼?

時間 2021-06-01 02:26:18

1樓:朱涵俊

char to int會進行符號擴充套件,如果高8位是1,高8至32位全是1。

要是unsigned char ,高位全是0,低8位一樣。

具體到彙編,有2條對應指令實現高位擴充套件。

2樓:Sinaean Dean

CPU不知道的,編譯器才知道,char型和int型唯一不一樣的地方就是它的長度。前者乙個位元組,後者兩個。這帶來兩方面的影響,乙個是計算時用多長的暫存器和對應計算指令,另乙個是訪問記憶體時訪問多長的資料。

對於計算來講,用乙個位元組來計算較大數的加法可能會得到意料之外的結果,因為溢位了。所以程式設計老師會推薦盡量使用int。

從訪問記憶體的角度,你的例子不涉及。但如果改一改,改成把char*變成int*的話,訪存的寬度就變了,本來訪問乙個位元組,現在變成訪問四個位元組,其餘三個位元組來自於這個位元組的周圍。這種現象可以誤用也可以善用。

簡單的善用方法就是我要列印乙個八字節的緩衝區時可以寫成列印兩個4位元組int,或一次8位元組long long,而不是列印八次或寫乙個for迴圈。

怎麼把一段英文錄音轉換成文字?急!!!?

知意 音訊轉文字 把英文錄音轉換成文字,可以試試 知意字稿 吧 知意字稿 錄音轉文字 語音翻譯 語音識別 錄音整理 字幕製作 有免費試用額度可以用哦 Tom Wang 科大訊飛不錯,iflyrec。我常用它的英文聽錄。如果對準確率要求稿,當然聽完之後一般還是需要修改,可以使用http otransc...

當乙個女孩開始潛意識的把身邊的顏色換成灰色,代表著什麼?

高明輝 灰色,象徵誠懇 沉穩 考究。灰色在權威中帶著精確,特別受金融業人士喜愛 當你需要表現智慧型 成功 權威 誠懇 認真 沉穩等場合時,可穿著灰色衣服現身。灰色人敏感纖細 給人都市化及人工化的冷感。喜愛灰色的人優越感重,冷靜處事。雖然工作能力極佳,但卻過於愛做夢而導致逃避現實。 覺於實相的旅程 或...

你覺得乙個男生真的把乙個女生當知己好友的話會是什麼樣的呢?

會推心置腹,也許平時日常的交流很少,但是精神上的交流必不可少,如果他發現倆人精神上同步,他跟你說事,你的回答恰好是他想要的,一次兩次可能是偶然,但總是這樣可就不是偶然了,也許是冥冥中注定,他會把你看的比較重要,畢竟精神上可以交流的朋友很少遇見,更會很珍惜你倆之間的友誼,但是很容易上公升成男女朋友關係...