From 63a6a21f1f728a131b599fca7bc20e2001b2ad33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gustav=20S=C3=B6rn=C3=A4s?= Date: Fri, 4 Feb 2022 08:58:45 +0100 Subject: move to dir --- lab1/lab1ucode.in | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 lab1/lab1ucode.in (limited to 'lab1/lab1ucode.in') diff --git a/lab1/lab1ucode.in b/lab1/lab1ucode.in new file mode 100644 index 0000000..d0a65f9 --- /dev/null +++ b/lab1/lab1ucode.in @@ -0,0 +1,95 @@ +pc->asr +pm->ir, pc++ +k2->upc + +direct: +ir->asr, k1->upc + +immediate: +pc->asr, pc++, k1->upc + +indirect: +ir->asr +pm->asr, k1->upc + +indexed: +ir->ar +; ar+gr3->ar +!1184000 +ar->asr, k1->upc + +load: +pm->grx, 0->upc + +store: +grx->pm, 0->upc + +add: +pm->ar +ar+grx->ar +ar->grx, 0->upc + +sub: +grx->ar +ar-pm->ar +ar->grx, 0->upc + +and: +grx->ar +ar&pm->ar +ar->grx, 0->upc + +lsr: +grx->ar +pm->lc +lsr_loop: +l=1? lsr_exit +lc--, lsr, b lsr_loop +lsr_exit: +ar->grx, 0->upc + +bra: +pc->ar +ar+'ir->ar +ar->pc, 0->upc + +bne: +pc->ar +z=1? bne_done +ar+'ir->ar +bne_done: +ar->pc, 0->upc + +halt: +halt + +cmp: +grx->ar +ar-pm->ar, 0->upc + +bge: +pc->ar +; if grx < pm +n=1? checko1 +o=1? bge_done +; N, N -> yes +b bge_jump +checko1: +o=1? bge_jump +b bge_done +bge_jump: +ar+'ir->ar +bge_done: +ar->pc, 0->upc + +beq: +pc->ar +z=1? beq_yes +b beq_no +beq_yes: +ar+'ir->ar +beq_no: +ar->pc, 0->upc + +end: +b end -- cgit v1.2.1