Simplified Instructional Computer
Pomnilnik
Velikost:
- b pomnilnik
- ena beseda po B=b
- celoten pomnilnik obsega B
Delovanje: - naslavlja se posamezne bajte
- besede se naslavlja z lokacijo najnižjega bajta
- big-endian
Registri
5 registrov, vsak velik b:
- A - akumulator: aritmetične operacije
- X - indeks: indeks po tabeli
- L - linkage: povratni naslov pri skokih
- PC - programski števec
- SW - status / zastavice
A, X in L registre lahko uporabimo kot pomožne
Formati podatkov
Cela števila: 24b predznačeno število, dvojiški komplement
Znaki: 8b ASCII
Ni aritmetike realnih števil
Formati ukazov

- OPCODE: št. strojnega ukaza
- X: način naslavljanja (1 indeksno naslavljanje - vrednosti naslova se prišteje vrednost v X)
- NASLOV
Načini naslavljanja
- UN … uporaben naslov - vrednost (p)
- (UN) … dereferenciran UN - vrednost na naslovu UN (*p)
- ((UN)) … dvojno deferenciran UN - vrednost na naslovu, ki je zapisan na naslovu UN (**p)
Naslavljanja glede na način izračuna UN:
- neposredno (direct): UN = naslov
- relativno (relative):
- bazno-relativno: UN = (B) + odmik (0 … 4095)
- PC-relativno: UN = (PC) + odmik (-2048 … 2047)
SIC pozna le neposredni način naslavljanja, ki ga lahko kombiniramo z indeksnim naslavljanjem
Nabor ukazov
Ukazi procesorju
Delo z registri:
- LDA, LDL: Load A [mem] / L [mem]
- STA, STL: Store [mem] A
Aritmetične operacije: vse delujejo na registru A - ADD, SUB, DIV, MUL (npr. SUB ONE … A=A-(ONE))
Primerjava: - COMP: rezultat primerjave () se shrani v Condintional Code v SW
Skoki: - JLT, JGT, JEQ: pogojni skoki se izvedejo glede na stanje CC zastavice
- J: brezpogojen skok
Podprogrami: - JSUB: vrednost PC se shrani v L
- RSUB: vrednost PC se vrne iz L
Zbirniška navodila - ukazi zbirniku
- RESW, RESB: rezervira prostor na oznaki labele za določeno št. besed ali bajtov
- BYTE, WORD: rezervacija pomnilnika in inicializacija
- START: označi ime in začetni naslov izvajalne kode programa (preskočimo podatkovni del)
- END: označi konec programa
Vhod in izhod
Naprave podane z 8b kodo, prenašamo 1B med pomnilnikom in napravo
Po POSIX standardu so 0 … stdin, 1 … stdout in 2 … stderr
- TD: preveri, ali je naprava pripravljena za branje/pisanje - rezultat se zapiše v CC zastavico
SIC eXtra Equipment
Nadgradnja procesorja SIC, navzdol 100% kompatibilen s SIC
Pomnilnik
Celoten pomnilnik obsega 1MB=b dodani načini naslavljanja, dodatni formati ukazov
Registri
Dodatni registri:
- B - bazni register: za bazno-relativno naslavljanje
- S in T - splošnonamenska registra
- F - floating point: izjemoma velik 48b
Formati podatkov
Realna števila - 48b:

Formati ukazov
4 formati:
Format 1
Format 1B=8b: ukazi brez operanda

Format 2
Format 2B=16b: registrsko-registrski ukazi

Številčenje registrov:

Format 3
Format 3B=24b:

Pomen bitov:
| b | p | način naslavljanja |
|---|---|---|
| 0 | 0 | neposredno |
| 0 | 1 | PC-relativno |
| 1 | 0 | bazno-relativno |
| 1 | 1 | NI MOŽNO |
| n | i | naslavljanje | operand |
|---|---|---|---|
| 0 | 0 | stari SIC format | |
| 0 | 1 | takojšnje | UN |
| 1 | 0 | posredno | ((UN)) |
| 1 | 1 | enostavno | (UN) |
| e bit = 0 |
Format 4
Format 4B=32b: pomen bitov enak kot v formatu 3

e bit = 1