📄 aluop.h
字号:
#pragma once
#include "PCType.h"
#include "RegisterType.h"
#include "Memory.h"
#include "CPUData.h"
class ALUOp
{
static void (*SystemCallOperation[18])(CPUData& Data);
public:
static void InitSystemCallOperation();
static void add(int d, int s, int t, int i, int h, CPUData& Data);
static void addi(int d, int s, int t, int i, int h, CPUData& Data);
static void addiu(int d, int s, int t, int i, int h, CPUData& Data);
static void addu(int d, int s, int t, int i, int h, CPUData& Data);
static void and(int d, int s, int t, int i, int h, CPUData& Data);
static void andi(int d, int s, int t, int i, int h, CPUData& Data);
static void beq(int d, int s, int t, int i, int h, CPUData& Data);
static void bgez(int d, int s, int t, int i, int h, CPUData& Data);
static void bgezal(int d, int s, int t, int i, int h, CPUData& Data);
static void bgtz(int d, int s, int t, int i, int h, CPUData& Data);
static void blez(int d, int s, int t, int i, int h, CPUData& Data);
static void bltz(int d, int s, int t, int i, int h, CPUData& Data);
static void bltzal(int d, int s, int t, int i, int h, CPUData& Data);
static void bne(int d, int s, int t, int i, int h, CPUData& Data);
static void div(int d, int s, int t, int i, int h, CPUData& Data);
static void divu(int d, int s, int t, int i, int h, CPUData& Data);
static void j(int d, int s, int t, int i, int h, CPUData& Data);
static void jal(int d, int s, int t, int i, int h, CPUData& Data);
static void jr(int d, int s, int t, int i, int h, CPUData& Data);
static void lb(int d, int s, int t, int i, int h, CPUData& Data);
static void lui(int d, int s, int t, int i, int h, CPUData& Data);
static void lw(int d, int s, int t, int i, int h, CPUData& Data);
static void mfhi(int d, int s, int t, int i, int h, CPUData& Data);
static void mflo(int d, int s, int t, int i, int h, CPUData& Data);
static void mult(int d, int s, int t, int i, int h, CPUData& Data);
static void multu(int d, int s, int t, int i, int h, CPUData& Data);
static void noop(int d, int s, int t, int i, int h, CPUData& Data);
static void or(int d, int s, int t, int i, int h, CPUData& Data);
static void ori(int d, int s, int t, int i, int h, CPUData& Data);
static void sb(int d, int s, int t, int i, int h, CPUData& Data);
static void sll(int d, int s, int t, int i, int h, CPUData& Data);
static void sllv(int d, int s, int t, int i, int h, CPUData& Data);
static void slt(int d, int s, int t, int i, int h, CPUData& Data);
static void slti(int d, int s, int t, int i, int h, CPUData& Data);
static void sltiu(int d, int s, int t, int i, int h, CPUData& Data);
static void sltu(int d, int s, int t, int i, int h, CPUData& Data);
static void sra(int d, int s, int t, int i, int h, CPUData& Data);
static void srl(int d, int s, int t, int i, int h, CPUData& Data);
static void srlv(int d, int s, int t, int i, int h, CPUData& Data);
static void sub(int d, int s, int t, int i, int h, CPUData& Data);
static void subu(int d, int s, int t, int i, int h, CPUData& Data);
static void sw(int d, int s, int t, int i, int h, CPUData& Data);
static void syscall(int d, int s, int t, int i, int h, CPUData& Data);
static void xor(int d, int s, int t, int i, int h, CPUData& Data);
static void xori(int d, int s, int t, int i, int h, CPUData& Data);
static void swcl(int d, int s, int t, int i, int h, CPUData& Data);
static void sdcl(int d, int s, int t, int i, int h, CPUData& Data);
static void add_s(int d, int s, int t, int i, int h, CPUData& Data);
static void add_d(int d, int s, int t, int i, int h, CPUData& Data);
static void div_s(int d, int s, int t, int i, int h, CPUData& Data);
static void div_d(int d, int s, int t, int i, int h, CPUData& Data);
static void mul_s(int d, int s, int t, int i, int h, CPUData& Data);
static void mul_d(int d, int s, int t, int i, int h, CPUData& Data);
static void sub_s(int d, int s, int t, int i, int h, CPUData& Data);
static void sub_d(int d, int s, int t, int i, int h, CPUData& Data);
static void bclt(int d, int s, int t, int i, int h, CPUData& Data);
static void bclf(int d, int s, int t, int i, int h, CPUData& Data);
static void c_eq_s(int d, int s, int t, int i, int h, CPUData& Data);
static void c_eq_d(int d, int s, int t, int i, int h, CPUData& Data);
static void c_lt_s(int d, int s, int t, int i, int h, CPUData& Data);
static void c_lt_d(int d, int s, int t, int i, int h, CPUData& Data);
static void c_le_s(int d, int s, int t, int i, int h, CPUData& Data);
static void c_le_d(int d, int s, int t, int i, int h, CPUData& Data);
static void mfc0(int d, int s, int t, int i, int h, CPUData& Data);
static void mfc1(int d, int s, int t, int i, int h, CPUData& Data);
static void mtc0(int d, int s, int t, int i, int h, CPUData& Data);
static void mtc1(int d, int s, int t, int i, int h, CPUData& Data);
private:
static void print_int(CPUData& Data);
static void print_float(CPUData& Data);
static void print_double(CPUData& Data);
static void print_string(CPUData& Data);
static void read_int(CPUData& Data);
static void read_float(CPUData& Data);
static void read_double(CPUData& Data);
static void read_string(CPUData& Data);
static void sbrk(CPUData& Data);
static void exit(CPUData& Data);
static void print_char(CPUData& Data);
static void read_char(CPUData& Data);
static void open(CPUData& Data);
static void read(CPUData& Data);
static void write(CPUData& Data);
static void close(CPUData& Data);
static void exit2(CPUData& Data);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -