This is a very WIP 8 bit computer. So far it basically supports nothing but eventually will have a full instruction set.SpecificationsThe CPU will be 8 bit and have 4 8-bit registers, A, B, C and D. It also has two 16-bit registers, X and Y. It has 16-bit memory addressing capabilities. The ALU can perform operations between ABCD and another register or immediate 8-bit value. The supported ALU operations are:
Add
Subtract
AND
OR
NOT
Negate
XOR
Compare: subtract and set flags but return the first operand
It will have 4 flags: zero flag, negative flag, carry (unsigned carry) and overflow (signed carry) flags.You can also read from or write to memory. The address can be a 16-bit register XY or a combination of 8-bit registers AB or CD. You can load a correctly sized immediate value into either size register or pair, and move values between them.Finally, you can perform jumps to values in registers as well as 16-bit immediate values, or indirect jumps that add an 8-bit value to the program counter. These can be conditional, only running on the presence or absence of a given flag.
Created:
May 28, 2021
Updated:
Aug 26, 2023
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?
Comments