Assembly Operands Flashcards Preview

OSCE > Assembly Operands > Flashcards

Flashcards in Assembly Operands Deck (12):
1

ADD/SUB

add or subtract two operands, storing the result in the first operand. These can be registers, memory locations (limit of one) or constants. For example, ADD EAX, 10 means add 10 to the value of EAX and store the result in EAX

2

XOR

Performing an ‘exclusive or’ of a register with itself sets its value to zero; an easy way of clearing the contents of a register

3

INC/DEC

increment or decrement the value of the operand by one

4

CMP

compare the value of two operands (register/memory address/constant) and set the appropriate EFLAGS value.

5

JMP

as the name implies these instructions allow you to jump to another location in the execution flow/instruction set. The JMP instruction simply jumps to a location whereas the conditional jumps (je, jz, etc) are taken only if certain criteria are met (using the EFLAGS register values mentioned earlier). For example, you might compare the values of two registers and jump to a location if they are both equal (uses je instruction and zero flag (zf) = 1).

6

MOV

Move a value from a register or memory into another register

7

MUL/DIV

Multiply and divide unsigned operands

8

IMUL/IDIV

Multiply and divide signed operands

9

CALL

Call a function

10

RET

Return back to a CALL address

11

PUSH

Set data in a register

12

POP

Remove data from a register