Assembly Operands Flashcards

1
Q

ADD/SUB

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

XOR

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

INC/DEC

A

increment or decrement the value of the operand by one

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

CMP

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

JMP

A

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).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

MOV

A

Move a value from a register or memory into another register

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

MUL/DIV

A

Multiply and divide unsigned operands

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

IMUL/IDIV

A

Multiply and divide signed operands

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

CALL

A

Call a function

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

RET

A

Return back to a CALL address

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

PUSH

A

Set data in a register

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

POP

A

Remove data from a register

How well did you know this?
1
Not at all
2
3
4
5
Perfectly