Неясно, какой язык вы используете для этого. Я предполагаю, что вы используете встроенную сборку в C.
Я наиболее знаком с NASM. Использование синтаксиса NASM для i386:
mov eax, 0x12345678 ; load whatever value
mov bx, ax ; put LSW in bx
shr eax, 16 ; shift MSW to ax
; now ax = MSW, bx = LSW
Я предполагаю, что код газа (C) будет выглядеть примерно так:
movl $0x12345678, %eax # load whatever value
movw %ax, %bx # put LSW in bx
shrl $16, %eax # shift MSW to ax
# now ax = MSW, bx = LSW