Longitudes de instrucción

Estaba mirando las diferentes instrucciones en el ensamblaje y estoy confundido sobre cómo se deciden las longitudes de los diferentes operandos y códigos de operación.

¿Es algo que túdebería saber por experiencia, o ¿hay alguna manera de averiguar qué combinación de operando / operador ocupa cuántos bytes?

Por ejemplo:

push %ebp ; takes up one byte
mov %esp, %ebp ; takes up two bytes

Entonces la pregunta es:

Al ver una instrucción dada, ¿cómo puedo deducir cuántos bytes requerirá su código de operación?

Respuestas a la pregunta(5)

Su respuesta a la pregunta