MOV 데이터 복사 = (대입 연산자) <br>예: a = b
ADD 덧셈 연산 + <br>예: a = b + c
SUB 뺄셈 연산 - <br>예: a = b - c
MUL 곱셈 연산 * <br>예: a = b * c
DIV 나눗셈 연산 / <br>예: a = b / c
INC +1 증가 a++ 또는 a += 1
DEC -1 감소 a-- 또는 a -= 1
CMP 비교 (뺄셈 기반) if (a == b) 등 비교문
JMP 무조건 분기 goto 또는 while(true)
JE / JZ 같으면 점프 if (a == b)
JNE / JNZ 다르면 점프 if (a != b)
JG / JA 크면 점프 if (a > b)
JL / JB 작으면 점프 if (a < b)
CALL 함수 호출 function()
RET 함수 종료 return
PUSH 스택에 저장 함수 호출 시 인자 전달, stack.append(x)
POP 스택에서 꺼냄 stack.pop()
INT 인터럽트 호출 시스템 호출 (예: syscall, OS API)
NOP 아무 것도 안 함 pass (Python), 빈 세미콜론 등
안이쁜 프로그래밍 언어였네
그리고 그 어셈블리어가 어떻게 실제로 물리적 기기로 전달돼서 작업을 하는지를 이해하면 진짜 그걸로 끝임
난 리버싱이나 후킹할때 말고는 안써본듯
https://c9x.me/x86/html/file_module_x86_id_252.html
ai 딸깍 구현해줘 하면 되는데