73 lines
1.7 KiB
Markdown
73 lines
1.7 KiB
Markdown
# YTD 12-bit Computer
|
|
*Yeahbut, aka Kyler Olsen*
|
|
|
|
It is a custom computer and instruction set architecture. It also has its own
|
|
assembly language with assembler. Custom high level language coming soon!
|
|
|
|
## ISA
|
|
*WIP*
|
|
|
|
## Assembly Language
|
|
*WIP*
|
|
|
|
### Registers
|
|
|
|
- `ZR`
|
|
- `PC`
|
|
- `SP`
|
|
- `MP`
|
|
- `D0`
|
|
- `D1`
|
|
- `D2`
|
|
- `D3`
|
|
|
|
### Zero Operand Instructions
|
|
|
|
- `NOP`
|
|
- `HLT`
|
|
- `BNZ`
|
|
- `BNA`
|
|
- `BNP`
|
|
- `BNN`
|
|
|
|
### One Operand Instructions
|
|
|
|
- `GLA` `Destination Register`
|
|
- `GET` `Destination Register`
|
|
- `LOD` `Destination Register`
|
|
- `STR` `Source Register`
|
|
- `POP` `Destination Register`
|
|
- `PSH` `Source Register`
|
|
- `LIU` `Immediate Value`
|
|
- `LDI` `Immediate Value`
|
|
- `LDI` :`Label`
|
|
- `LIL` `Immediate Value`
|
|
|
|
### Two Operand Instructions
|
|
|
|
- `LSH` `Destination Register` `Source Register`
|
|
- `RSH` `Destination Register` `Source Register`
|
|
- `INC` `Destination Register` `Source Register`
|
|
- `DEC` `Destination Register` `Source Register`
|
|
|
|
### Three Operand Instructions
|
|
|
|
- `AND` `Destination Register` `Source Register A` `Source Register B`
|
|
- `OR` `Destination Register` `Source Register A` `Source Register B`
|
|
- `SUB` `Destination Register` `Source Register A` `Source Register B`
|
|
- `XOR` `Destination Register` `Source Register A` `Source Register B`
|
|
- `NOR` `Destination Register` `Source Register A` `Source Register B`
|
|
- `NAD` `Destination Register` `Source Register A` `Source Register B`
|
|
- `ADD` `Destination Register` `Source Register A` `Source Register B`
|
|
|
|
## High Level Language
|
|
*WIP*
|
|
|
|
Paradigm: Multi-Paradigm: Procedural (Imperative), Structured
|
|
Designer: Kyler Olsen
|
|
First Appeared: *Future*
|
|
Typing Discipline: Typeless
|
|
Platform: ytd 12-bit computer, ytd 12-bit emulator (multi-platform)
|
|
License: *Tentatively MIT*
|
|
Filename extension: `.ytd12c`
|