Red de conocimiento informático - Conocimiento sistemático - Programación en lenguaje ensamblador para encontrar el número máximo

Programación en lenguaje ensamblador para encontrar el número máximo

La clave de esta pregunta es cómo determinar los números pares e impares. En el libro binario, el bit más bajo de los números impares es 1 y el bit más bajo de los números pares es 0. Podemos usar el código de prueba 0001H para realizar la prueba.

El programa principal es:

xor ax; borra el contador impar ax

xor bx; comprueba si num1 es un número impar, bit de bandera impar

p>

test num1,0001H

jz OS1 ;Número par, saltar número impar, continuar ejecución

inc ax ;Aparece un número impar

inc bx ;num1 es un número impar, bx se establece en 1

OS1 test num2,0001H

jz OS2; mum2 es un número par, salta

inc ax; mum2 es un número impar

jump LOOP1

OS2 cmp ax,00H; si son dos números pares, cero números impares son dos números pares.

jne LOOP1 ;No, saltar

inc num1 ;Sí, agregar uno a los dos datos respectivamente

inc num2

saltar LOOP2

LOOP1 cmp ax,0010H ; Comprueba el número impar (0010H=2)

je LOOP2 ; Dos números impares, salta

cmp bx,1 ; es solo un número impar en este momento, luego juzgue si mum1 es un número impar y salte

je LOOP2 ;num1 es un número impar, salte

xchg num1,num2 ;No, swap

LOOP2 mov num1,da1; asignación

mov num2,da2

end

Si hay alguna inexactitud, critique y corregirlos! !