前提・実現したいこと
倍精度浮動小数点数形式にする
該当のソースコード
c言語
1#include <stdio.h> 2#include <string.h> 3 4int main(void) 5{ 6 double data = 0.1; 7 int binary[64]; 8 int pos; 9 unsigned int tmp; 10 11 memcpy(&tmp, &data, sizeof(data)); 12 13 for (pos = 0; pos < 64; pos++) 14 { 15 binary[pos] = tmp % 2; 16 tmp /= 2; 17 } 18 19 for (pos = 63; pos >= 0; pos--) 20 { 21 if (pos == 62 || pos == 51) 22 { 23 printf("-"); 24 } 25 printf("%d", binary[pos]); 26 } 27 printf("\n"); 28 29 return 0; 30}
実行結果
0-00000000000-0000000000000000000010011001100110011001100110011010
となってしまいます。
0-01111111011-1001100110011001100110011001100110011001100110011010
となるはずなのですが、、、
補足情報(FW/ツールのバージョンなど)
vscode
ちと意味不明ですが、、
なにをしようとしてるんでしょうか
回答2件
あなたの回答
tips
プレビュー