Я пытаюсь написать эмулятор x86 на JavaScript для образовательных целей.
Я уже написал компилятор и сейчас пытаюсь написать эмулятор x86 на JavaScript.
Однако у меня проблема с инструкцией DIV. Согласно http://siyobik.info/index.php?module=x86&id=72 DIV принимает 64-битное число в качестве ввода, интерпретируя EDX как старший 32-битный и EAX как младший 32-битный. Затем он делит это число на параметр DIV и помещает результат (если он не больше 0xFFFFFFFF) в EAX, а остаток в EDX.
Поскольку JavaScript не поддерживает 64-битное целое число, мне нужно применить некоторые приемы. Но до сих пор я не нашел ничего полезного.
Кто-нибудь здесь имеет представление, как правильно реализовать это с помощью 32-битной арифметики?