Depuración de programas Ejercicio multiplicación de !" #its
Operaciones aritméticas ●
●
●
●
Incremento la orden es I$CA o I$C% & suma
una unidad a A o %, respecti'amente Decremento igual (ue en el caso anterior )a& dos 'ersiones DECA & DEC% Puesta a cero C*RA +C*eaR A & C*R%, e(ui'alentes a *DA -. & *D% -., pero m/s r/pidas Negativo $E0A & $E0% cam#ian de signo el 'alor (ue )a&a en A & %, respecti'amente +)acen el complemento a dos
Operaciones suma ●
Suma cuatro 'ersiones
ADDA, ADD%, ADDD so#re un registro, 'aria#le o dirección de memoria ADDA 1 A3A41 A%5 suma especial 5354% +sin signo Suma con el bit de acarreo ADCA & ADC%6 Como ADDA & ADD% pero suman el #it de acarreo6 ●
–
●
●
Operaciones resta & multiplicación ●
Resta S7%A, S7%% & S7%D so#re un registro,
'aria#le o dirección de memoria ●
●
●
S7%% 1 %3%81 Resta con acarreo S%CA & S%C%, como
S7%A & S7%% pero se resta el #it de acarreo Extensión del signo SE5 +SignE5tension6 E9tiende el signo de % en A de modo (ue el registro D e9prese el mismo n:mero en complemento a dos Multiplicación ;7* multiplica sin signo A por % & el resultado (ueda en D +D3A<%
ace Balta aadir al enlaador la generación de un mapa de sím#olos +8m en Bormato anc)o +8 ●
●
aslink -s – m -w suma.rel
Esto genera un mapa +suma6map (ue utiliar/ para la depuración
Depuración ●
Al ejecutar el código, si e9iste un Bic)ero 6map, se ejecuta en modo depuración +dbg F de#ug en el (ue podemos usar las órdenes ●
●
l lista el programa b indica un punto de ruptura donde GC de#e parar Gor ejemplo # .9.!=D bl lista los puntos de ruptura esta#lecidos d #orra todos los puntos de ruptura c continuar con la simulación – – –
●
●
s continuar sólo con la siguiente línea +step
●
! a#andona la simulación
Ejemplo 2 ●
Sumar dos n:meros de !" #its ●
●
Copiar & ejecutar el programa Compro#ar (ue Bunciona correctamente mediante el depurador
Ejercicio H ●
Restar dos n:meros de !" #its ●
●
%asarse en el ejemplo 2 Compro#ar (ue Bunciona correctamente mediante el depurador
Ejercicio > ●
Sumar a un n:mero de !" #its ●
●
●
●
7n n:mero de #its sin signo 7n n:mero de #its con signo acer uso del registro 5 donde sea necesario Gista instrucción SE5
Ejercicio " ●
;ultiplicar dos n:meros de !" #its ●
●
●
;ediante la orden ;7* J el algoritmo de multiplicación tradicional El resultado ser/ un n:mero de =2 #its (ue puede almacenarse como 2 pala#ras de !" #its, una para la parte alta & otra para la #aja
;ultiplicación de dos n:meros de !" #its ●
Como una multiplicación normal >.2H 9 !K!! ...>.2H >.2H 4 ..>.2H. >.2H H>2!" H>2!".. >.2H >.2H... K".."H c
;ultiplicación de dos n:meros de !" #its ●
Sean 2 n:meros de !" #its !K!! & >.2H ●
En )e9adecimal .9.@@@ & .9!=A. –
–
;7* multiplica dos registros de #its +A,% en uno de !" +D En registros de #its .@ @@ & != A.
.@ @@ 9 != A. .A<@@ A.<.@ !=<@@ !=<.@ HA ". .H ". . D> .. > .. K2 @L ". c
;ultiplicación !" #its ●
Maria#les ●
●
●
●
H 'aria#les de !" #its para los 'alores intermedios 2 'aria#les de !" #its para el resultado ! 'aria#le de #its para CC
Groceso ●
acer las H multiplicaciones intermedias de #its –
●
acer sumas de las tres partes menos signiBicati'as – –
●
J almacenar los resultados en las 'aria#les de !" Rellenando con ceros a la derec)a +% Almacenando #it de acarreo en una 'aria#le +NLR 4 SN
acer sumas de las tres partes m/s signiBicati'as – –
Rellenando con ceros a la i(uierda +A J sumar #it de acarreo +*D4NLR