From e94e486e18b795383ea133b56c8cd06b253c1c14 Mon Sep 17 00:00:00 2001 From: Garritt McCune Date: Thu, 29 Sep 2022 20:42:37 +0000 Subject: [PATCH] More refinements to the loading data instructions. I am truly bad at this whole thing... --- docs/document.tex | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/docs/document.tex b/docs/document.tex index 67bbbcf..914c3d1 100644 --- a/docs/document.tex +++ b/docs/document.tex @@ -72,21 +72,24 @@ \section{STOW (Store Machine Word)} \OpcodeTable{0x20}{stow}{Register}{Address}\\[6pt] Stores a machine word from a register to a memory address. + \section{LA (Load Address)} + \OpcodeTable{0x00}{la}{Register}{Address}\\[6pt] + Loads an address (2 bytes) into the register. \section{LODB (Load Byte)} - \OpcodeTable{0x20}{lodb}{Register}{Address}\\[6pt] - Loads a single byte into a register from a memory address, zeroing out the high nibble. + \OpcodeTable{0x20}{lodb}{Register}{Register}\\[6pt] + Loads a single byte into a register from a memory address in the second operand register, zeroing out the high nibble. \section{LODW (Load Machine Word)} - \OpcodeTable{0x20}{lodw}{Register}{Address}\\[6pt] - Loads a word into a register from a memory address. - \section{LODBI (Load Immediate Byte)} - \OpcodeTable{0x00}{lodbi}{Register}{Constant}\\[6pt] - Loads an immediate byte into the register, zeroing the high nibble. + \OpcodeTable{0x20}{lodw}{Register}{Register}\\[6pt] + Loads a word into a register from a memory address in the second operand register. \section{LODWI (Load Immediate Word)} \OpcodeTable{0x00}{lodwi}{Register}{Constant}\\[6pt] - Loads an immediate machine word into the register. + Loads an immediate machine word into the register clearing the high nibble if the value is less then 256. \section{CMP (Compare)} \OpcodeTable{0x20}{cmp}{Register}{Register}\\[6pt] Compares two registers and somewhere sets a result, maybe in register 1? + \section{CMPI (Compare Immediate)} + \OpcodeTable{0x00}{cmpi}{Register}{Constant}\\[6pt] + Compares an immediate 2 byte value to the contents of a register setting a result. \section{ADD (Add)} \OpcodeTable{0x20}{add}{Register}{Register}\\[6pt] Performs addition on a register with a value from another (or the same) register.