Simple as Possible Computer You can program the ROM to do simple operations like addition and subtraction. To run the program, set the clear input to ground. The ROM currently performs 5+11-6. Instruction OP-Code
LDA - 0x
ADD - 1x
Subtract - 2x
Output - ee
Halt - ff
Created:
Jan 23, 2018
Updated:
Apr 19, 2021
Add members
Enter Email IDs separated by commas, spaces or enter. Users need to be registered already on the platform. Note that collaboration is not real time as of now. Every save overwrites the previous data.
Delete
Are you sure you want to delete this project?
Delete
Are you sure you want to remove this collaborator?
@Aiex2 it seems like it's simply splitting the ROM into two portions. The top two rows of hex entries are the instructions,
while the bottom two rows are the numbers. This way, it's better organized. It would be pretty hard to wrap your head
around instructions if they were sequential.
My best guess at the nomenclature for C39-43 has to do with the encoding of instructions each segment performs. To back this statement up some, take a look at CS-SAP. In it, each sub-circuit is used to re-encode the decoded instructions that are fed from the iDecoder (instruction decoder), and the control signals from T-Clock. As to the exact instruction pattern that this nomenclature follows, I haven't the foggiest.
@glitchkiller872 it's a mnemonic for "load register A", or load a word into the accumulator register. The accumulator is the register where the magic happens, where you get operands from memory, add them, subtract them, or perform bitwise operators on them, then store from to memory if you have RAM to do so. This computer design doesn't have any RAM to store its data to, so sadly it doesn't have those instructions.
Also as a sidenote, LDA isn't necessarily a mnemonic used in many CPU architectures, as the register files are much larger, typically 32-64 registers in total in most computers. Because of this, we can't use LDA in the Assembly we write (there is a specific name for the accumulator register, but we won't talk about that ), so...... we use the LDx mnemonic, where x can be a register id in the file. Most cases, this can be subdivided if the registers are 32 bits wide, so we can have Ax, Bx, etc for 8 bit segments of these larger registers. A more comprehensive list of register names in x86 architecture can be found here: https://en.wikibooks.org/wiki/X86_Assembly/X86_Architecture.
Posted on Apr 27 2021 at 01:34PM UTC.
Last modified by SDC on Apr 27 2021 at 01:37PM UTC.
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?
Delete
Are you sure you want to delete this comment?