29.10. SPEW

Odkazy:

Fiktivní procesor s 4KB operační paměti.

Tabulka 29.27. Registry procesoru SPEW

názevšířka [bit]adresapopis
A8F00accumulator
STATUS8F01status register
STK16F02,F03stack pointer
PC16F04,F05program counter

Pamět má velikost 4096 bajtů a je obsazena následovně.

Tabulka 29.28. Registry procesoru SPEW

adresa(y)labelpopis 
000-0FF inicializováno hodnotami 00-FF 
100-EFF core/data area 
F00Aaccumulator 
F01STATUSstatus register 
F02,F03STKstack pointer 
F04,F05PCprogram counter 
F06-FFFSTACKdefault stack area 

Instrukce

Hex     Mnemonic                Brief description
----    --------                -----------------
00xx    OSCALL xx               Use an OS call (int 21h service)
0xxx    JP xxx                  Jump to new PC address
1000    RETURN                  Return from a GOSUB call
1xxx    GOSUB xxx               Go (call) a sub-routine
2xxx    PUSHB [xxx]             Push a byte onto the stack
3xxx    POPB [xxx]              Pop a byte from the stack
4xxx    LDA [xxx]               Load A (accumulator) from memory
5xxx    STA [xxx]               Store A into memory
6xxx    RDI [(xxx)]             Read an indirect byte using mem-ptr
7xxx    WRI [(xxx)]             Write an indirect byte using mem-ptr
8xxx    RDSYS [0000:0xxx]       Read byte from system ram[0000:0xxx]
9xxx    ADDW [xxx],A            Add sign-extended A to word variable
Acpp    JPcc +pp                Jump if the condition is true
Bxxx    ADCA [xxx]              A + mem[xxx] + CF
Cxxx    SBBA [xxx]              A - mem[xxx] - CF
Dxxx    ORA  [xxx]              A OR mem[xxx]
Exxx    ANDA [xxx]              A AND mem[xxx]
Fxxx    XORA [xxx]              A XOR mem[xxx]
Licence Creative Commons
Elektronika a počítače, jejímž autorem je Radek Hnilica, podléhá licenci Creative Commons Uveďte autora-Nevyužívejte dílo komerčně-Zachovejte licenci 3.0 Česká republika .