¿Por qué puedo acceder a dword / word / byte más bajo en un registro pero no más arriba?

Empecé a aprender ensamblador, y esto no me parece lógico.

¿Por qué no puedo usar varios bytes más altos en un registro?

Entiendo la razón histórica derax->eax->axasí que centrémonos ennuevo Registros de 64 bits. Por ejemplo, puedo usarr8 yr8d, pero por qué nor8dl yr8dh? Lo mismo pasa conr8w yr8b.

Mi pensamiento inicial fue que puedo usar 8r8b se registra al mismo tiempo (como puedo hacer conal yah al mismo tiempo). Pero no puedo Y usandor8b hace el completor8 registrarse "ocupado".

Lo que plantea la pregunta: ¿por qué? ¿Por qué necesitaría usar solo una parte de un registro si no puede usar otras partes al mismo tiempo? ¿Por qué no solo quedarse solor8 y olvidarse de las partes inferiores?

Respuestas a la pregunta(3)

Su respuesta a la pregunta