본문 바로가기
Study/Reversing

[리버싱] AND, TEST, CMP, SUB 차이

by graygreat 2017. 8. 24.
728x90
반응형


AND


비트연산을 수행한다.


Operand의 값들을 2진수로 바꾸어 비트연산을 통해 값이 참의 값만을 가지고 온다.



SUB 

마이너스 기능을 수행한다.

SUB a1, a2 형식이면 a1의 값을 a2만큼 감소한 후 결과값을 a1에 저장.


TEST


첫번째 Operand와 두번째 Operand를 AND 시킨다. 


이 연산의 결과는 ZF에만 영향을 미치고 Operand에 영향을 미치지 않고 버려진다.


두 Operand가 모두 0인지 아닌지 판단 가능.



CMP


첫번째 Operand와 두번째 Operand를 뺀다


이 연산의 결과는 ZF에만 영향을 미치고 Operand에 영향을 미치지 않고 버려진다.


두 Operand가 같은지 판단 가능.




반응형

'Study > Reversing' 카테고리의 다른 글

[리버싱] 스택프레임에 대해 알아보자  (0) 2017.08.24
[리버싱] 메모리 구조  (0) 2017.08.24
[리버싱] MOV, LEA  (0) 2017.08.24
[리버싱] CD.exe 문제풀기  (0) 2017.08.24
[리버싱] API에 대해 알아보자  (0) 2017.08.24

댓글