Делаю конвертеры. Это функции, которые берут со стека токен и пытаются преобразовать его в литерал данного типа.
Вдруг выяснилось, что тип long long на платформе INT64 имеет размер 64 бита - такой же, как у long. А не 128 бит, как я предполагал.
Я поинтересовался, как обстоят дела в Питоне - там long long - это 128 бит. Впрочем, Питон умеет работать и с 256-битными числами.
Меня конечно такое положение не могло устроить. Моя таблица типов выглядит так:
- Char - 8 бит
- Short - 16 бит
- Integer - 32 бит
- Long - 64 бита
- LongLong - 128 бит
В общем, пришлось написать собственную реализацию типа LongLong.
Пару дней я его писал, несколько дней исправлял ошибки, и вот, наконец-то он заработал.
Теперь можно приступать к конвертерам чисел с плавающей точкой.
Комментариев нет:
Отправить комментарий