|
contur2
|
Abstract CPU interface. More...
#include <i_cpu.h>

Public Member Functions | |
| virtual | ~ICPU ()=default |
| virtual Interrupt | step (RegisterFile ®s)=0 |
| Performs a single fetch-decode-execute cycle. | |
| virtual void | reset () noexcept=0 |
| Resets the CPU's internal state (flags, etc.). | |
Protected Member Functions | |
| ICPU ()=default | |
| ICPU (const ICPU &)=default | |
| ICPU & | operator= (const ICPU &)=default |
| ICPU (ICPU &&)=default | |
| ICPU & | operator= (ICPU &&)=default |
Abstract CPU interface.
The CPU reads instructions from memory (referenced internally), decodes them, and executes using the provided RegisterFile. Each call to step() performs one fetch-decode-execute cycle.
|
virtualdefault |
|
protecteddefault |
|
protecteddefault |
|
protecteddefault |
|
pure virtualnoexcept |
Resets the CPU's internal state (flags, etc.).
Implemented in contur::Cpu.
|
nodiscardpure virtual |
Performs a single fetch-decode-execute cycle.
Reads the instruction at the address given by the Program Counter in regs, decodes it, executes it (updating regs and possibly memory), and advances the PC.
| regs | The register file for the currently running process. |
Implemented in contur::Cpu.