Я знаю, как преобразовать двоичный код в десятичный. Я знаю как минимум 2 метода: настольный и силовой; -)
Я хочу преобразовать двоичный код в десятичный и вывести это десятичное число. Более того, меня не интересует это "десятичное число"; Я хочу просто напечатать это.
Но, как я уже писал выше, я знаю только 2 метода преобразования двоичного числа в десятичное, и оба они требуют добавления. Итак, я вычисляю некоторое значение для 1 или 0 в двоичном виде и добавляю его к запомненному значению. Это тонкое место. У меня действительно очень большое число (1 и 64 нуля). При конвертации мне нужно поместить некоторый промежуточный результат в некоторую «переменную». В C у меня есть тип int, который составляет только 4 байта и не более 10 ^ 11.
Итак, у меня недостаточно памяти для хранения промежуточного результата при преобразовании из двоичного в десятичное. Как я уже писал выше, меня не интересует ТОЧЕСТВЕННАЯ десятичная дробь, я просто хочу напечатать результат. Но я не вижу других способов решить эту проблему ;-( Есть ли какое-либо решение «просто напечатать» из двоичного файла?
Или, может быть, я должен использовать что-то вроде BCD (Binary Coded Decimal) для промежуточного представления? Я действительно не хочу использовать это, потому что это не так кроссплатформенно (процессоры Intel имеют встроенную функцию, но для других мне нужно написать собственную реализацию).
Буду рад услышать ваши мысли. Спасибо за терпение.
Язык: C.