오른쪽 혹은 왼쪽으로 비트를 옮기는것
왼쪽 : x2 효과
오른쪽 : /2 효과
mov eax, 0x12345678
PRINT_HEX 4, eax
결과
12345678
shl eax, 8 ; 왼쪽으로 8비트 쉬프트
PRINT_HEX 4, eax
결과
34567800
shr eax, 8 ; 오른쪽으로 8비트 쉬프트
결과
345678
비교문법
CMP dst, src (dst가 기준)
비교를 한 결과물은 Flag Register에 저장된다.
기본 점프문법
JMP [label]
label 로 점프
점프문 종류
JMP : 무조건 jump
JE : JumpEquals
JNE : JumpNotEquals
JG : JumpGreater
JGE : JumpGreaterEquals
JL : JumpLower
JLE : JumpLowerEquals
예) 두 숫자가 같으면 1, 다르면 0을 출력하는 코드
mov rax, 10
mov rbx, 20
cmp rax, rbx
je LABEL_EQUAL
mov rcx, 0
jmp LABEL_EQUAL_END
LABEL_EQUAL:
mov rcx, 1
LABEL_EQUAL_END:
PRINT_HEX 1, rcx