Data sizes

mov and registers. Restrictions on mov.

Memory access.

Binary addition. Flags after add and sub.

Condition codes, mapping to flags.

cmp, conditional jumps. Mapping if-else and loops to assembly.

Function calling. Arguments, normal and floating-point.

Pipeline stalls. Hazards. Data dependencies.

Group exercise (if we have time)

Write a function is_sorted which takes the address of a (qword, signed) array in rdi, array length in rsi and returns 1 if the array is sorted in ascending order, or 0 if it is not.