diff --git a/gnu_decimals.c b/gnu_decimals.c new file mode 100644 index 0000000..c860687 --- /dev/null +++ b/gnu_decimals.c @@ -0,0 +1,16 @@ +// @COMPILECMD gcc $@ -o $*.out +#define _OPEN_SYS_ITOA_EXT +#include +#include +signed main() { + _Decimal32 d = 1; + for (int i = 0; i < sizeof(_Decimal32); i++) { + char c = *( ((char *)(&d)) + i ); + for(int h = 0; h < 8; h++){ + fputs(((c & 0b10000000) ? "1" : "0"), stdout); + c <<= 1; + } + fputs(".", stdout); + } + puts(""); +}