diff options
author | Karel Kočí <cynerd@email.cz> | 2017-08-30 21:37:53 +0200 |
---|---|---|
committer | Karel Kočí <cynerd@email.cz> | 2017-08-30 21:42:02 +0200 |
commit | 9cf92379d5fcf0076c25dae0935daab446c992cd (patch) | |
tree | dd09a2e996db1e5a8117f01bec76f1e93eaca6e1 /qtmips_machine/instructions/shift.h | |
download | qtmips-9cf92379d5fcf0076c25dae0935daab446c992cd.tar.gz qtmips-9cf92379d5fcf0076c25dae0935daab446c992cd.tar.bz2 qtmips-9cf92379d5fcf0076c25dae0935daab446c992cd.zip |
Initial commit
Adding work done so far.
Diffstat (limited to 'qtmips_machine/instructions/shift.h')
-rw-r--r-- | qtmips_machine/instructions/shift.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/qtmips_machine/instructions/shift.h b/qtmips_machine/instructions/shift.h new file mode 100644 index 0000000..9ce29e0 --- /dev/null +++ b/qtmips_machine/instructions/shift.h @@ -0,0 +1,28 @@ +#ifndef SHIFT_H +#define SHIFT_H + +#include "instruction.h" + +enum InstructionShiftT { + IST_LL, // Left logical + IST_RL, // Right logical + IST_RA // Right arithmetic +}; + +class InstructionShift : public InstructionR { +public: + InstructionShift(enum InstructionShiftT type, std::uint8_t rt, std::uint8_t rd, std::uint8_t sa); + std::vector<std::string> to_strs(); +private: + enum InstructionShiftT type; +}; + +class InstructionShiftVariable : public InstructionR { +public: + InstructionShiftVariable(enum InstructionShiftT type, std::uint8_t rs, std::uint8_t rt, std::uint8_t rd); + std::vector<std::string> to_strs(); +private: + enum InstructionShiftT type; +}; + +#endif // SHIFT_H |