Skip to content

Instantly share code, notes, and snippets.

@WideWord
Last active December 14, 2015 18:19
Show Gist options
  • Select an option

  • Save WideWord/5128873 to your computer and use it in GitHub Desktop.

Select an option

Save WideWord/5128873 to your computer and use it in GitHub Desktop.
RAM адресация по словам (16 bit), адрес - 16 bit.
10 регистров, Program Counter, регистр ввода (только чтение),
регистр вывода, регистр адреса (всё до этого 16 bit),
условный флаг (1 bit).
Формат кода:
Первые 8 бит - команда, следующие 4 бит - операнд a,
следующие 4 бит - операнд b. Если операнд b - константа,
следующее слово - значение константы.
Например 0x1056: команда 0x10, a 0x5, b 0x6.
Команды:
0x10 set a, b
0x11 add a, b
0x12 sub a, b
0x13 and a, b
0x14 or a, b
0x15 mul a, b
0x16 div a, b
0x18 xor a, b
0x20 setif a, b - устанавливает в a значение b, только если условный флаг = 1
0x21 cmp a, b - если a = b, устанавливает в условный флаг 1, иначе 0
0x22 cmm a, b - если a > b, устанавливает в условный флаг 1, иначе 0
Формат операндов:
0x0 - ячейка памяти по адресу в регистре адреса
0x1 - константа (доступно только как операнд b)
0x2 - Program counter
0x3 - регистр выходов
0x4 - регистр входов
0x5 - регистр адреса
0x6 - 0xf - 10 регистров общего назначения
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment