Add int get_flag(uint32_t flag_type) function

This commit is contained in:
tuz358
2018-03-05 11:43:50 +09:00
parent 5894c46d10
commit 4b84c23d92
2 changed files with 13 additions and 0 deletions

View File

@@ -11,6 +11,7 @@ class Instructions{
private:
void init_instructions();
void set_flag(int flag, uint32_t flag_type);
int get_flag(uint32_t flag_type);
public:
Memory memory;
uint32_t registers[8]; // eax, ecx, edx, ebx, esp, ebp, esi, edi

View File

@@ -288,3 +288,15 @@ void Instructions::set_flag(int flag, uint32_t flag_type){
this->eflags |= flag_type;
}
}
int Instructions::get_flag(uint32_t flag_type){
int flag_status = 0;
if ((this->eflags & flag_type) == 0) {
flag_status = 0;
} else {
flag_status = 1;
}
return flag_status;
}