JMP 점프

 NOP 아무것도 안한다

JE -  Jump if equal 비교나 테스트의 결과가 같다면 점프

JNE 은 이거랑 만대로 생각하시면 됩니다.

Je는 Jump if equal 였죠 JNE은 N이 추가 되있네요 풀어보면 Jump if NOP equal 이네요

그럼 JNE 은 아시겠죠 ?

 

그럼 J는 Jump if 이므로 생략하겠습니다.

Jz Z는 제로입니다. 말그대로 왼쪽 인자의 값이  0이라면 점프입니다.

그럼 jNZ는 아시겟죠?

그럼 JL로 넘어시다

L은 LESS SINGED 왼쪽인자의 값이 오른쪽 인자의 값보단 작으면 점프 입니다.

JNL은 넘어가겠습니다.

JB 는 BELOW UNSIGNED 왼쪽  인자의 값이 오른쪽 인자의 값보다 작으면 점프

JNB 은 넘어값니다

JG 는 왼쪽 인자의 값이 오른쪽 인자의 값보다 크면 점프

JNG는 반대

jLE 왼쪽인자의값이 오른쪽 인자의 값보다 작거나 같으면 점프

JGE 이건 g네요 많이 안쓰니깐 JLE의 반대라고 설명하겠습니다 . 나머지는 차차 설명하겠습니다.

아래는 많이쓰는 어셈코드표입니다. 이건 꼭 외울필요는 없습니다.

JE 74 OF 0F84

JNE 75 OF  0F85

jmp eb

nop 90

일단은 이 4개만 설명하겠습니다.

 

출처 : 쿨소프트2.0

어셈블리를 시작하니 어렵게 설명하진 않겠습니다

 

명령어 대상오퍼랜드 소스오퍼랜드  이러한 구조를 가지고 있습니다.

 

MOV : 메모리나 레이스터의 값을 옴길때 쓰입니다.

 

POP :SP 레지스터를 조작하는 명령어로 스택의 데이터를 꺼냅니다.

 

dec 레지 1감소

 

inc: 레지 1증가

 

Add: 레지스터의 메모리의 값을 더할떄 쓰인다.

 

sub: 레지스터의 메모리의 값을 뺼떄 쓰인다.

 

Lea : 대상 오퍼랜드의 값을 오퍼랜드의 값으로 만듬

 

return: 돌아감

 

Nop:동작안함

 

Call :호출

 

cmp :비교

 

출처 : 쿨소프트2.0