0

私はCの初心者で、自分で学んでいます。ビット単位の演算のためにintをbinaryに変換しようとしていますが、その方法がよくわかりません。modや他の数学を使ってそれをやろうとしましたが、うまくいきませんでした。私は周りを検索しましたが、これの明確な方法を見つけられませんでした。手伝ってください。

4

2 に答える 2

6

intビット単位の演算子を使用するために、の変換を行う必要はありません。それらは、を構成するビットで自動的に機能しintます。

数値の2進表現を表示する場合は、次を使用できます(最下位8ビットを想定)...

int num = 4;

int i;

for (i = 7; i >= 0; i--) {
    printf("%d", (num >> i) & 1);
}

CodePad

これはビット演算子>>(右シフト)と&(および)を使用します。

于 2012-09-10T00:36:16.043 に答える
4

コンピューターでは既にバイナリとして表現されています。(これらの 3 進数コンピューターのいずれかを持っている場合を除きます。) では、ビット単位の演算子をints で使用してください。(これらの 3 進コンピューターのいずれかを持っていても機能します。)

見る?できます!

于 2012-09-10T00:36:41.477 に答える