Está en la página 1de 15

UNIDAD II Programacion.

--------------------------------------------------------------------------------------------------------------

UNIDAD II PROGRAMACIN
2.1 LENGUAJE ENSAMBLADOR
En el lenguaje ensamblador el programador utiliza instrucciones simblicas en lugar de instrucciones de maquina y nombres descripti os para los elementos de datos y para las localidades de memoria. Usted escribe un programa en ensamblador de acuerdo con un conjunto estricto de reglas que despu!s utiliza el programa traductor de ensamblador para con ertir el programa ensamblador en cdigo m"quina. E#isten $ clases de lenguajes de programacin% de alto ni el y de bajo ni el. &os programadores que escriben en un lenguaje de alto ni el 'como ( y Pascal)* codi+ican comandos poderosos* cada uno de los cuales puede generar muc,as instrucciones en lenguaje de m"quina. Por otro lado* los programadores que escriben en un lenguaje ensamblador de bajo ni el codi+ican instrucciones simblicas* cada una de las cuales genera una instruccin en lenguaje maquina. A pesar del ,ec,o de que codi+icar en un lenguaje de alto ni el es mas producti o* algunas entajas de codi+icar en lenguaje ensamblador son% Proporciona mas control sobre el manejo particular de los requerimientos de ,ard-are. .enera mdulos ejecutables mas peque/os y mas compactos. (on mayor probabilidad tiene una ejecucin mas r"pida.

Una pr"ctica com0n es combinar los bene+icios de ambos ni eles de programacin. Un lenguaje de alto ni el utiliza un compilador para traducir el cdigo +uente a lenguaje maquina. Un lenguaje de bajo ni el utiliza un ensamblador para realizar la traduccin. Un programa en lenguaje ensamblador consiste en un conjunto de enunciados. &os dos tipos de enunciados o l1neas de programacin son% 2.- Instruccin* tal como 345 y ADD* que el ensamblador traduce a cdigo objeto $.- Directi a* que indican al ensamblador que realice una accin especi+ica* como de+inir un elemento de dato. ENUNCIADO O LINEA DE PROGRAMACIN: [Etiqueta] <Operacin o irecti!a" [ operan o #$% ] [ & co'entario$ ] NOTA: Los corchetes indican una entrada opcional A continuacin se ,ar" un comentario de c 6elemento%

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

2;

UNIDAD II Programacion. -------------------------------------------------------------------------------------------------------------E(I)UE(A o IDEN(I*ICADOR+, Es un nombre para designar un dato y la direccin donde se encuentra dicho dato. Puede consistir de los siguientes caracteres: Letras del alfabeto: A- a -! "#gitos: $% &' $no puede ser el primer car(cter' )aracteres especiales: signo de interrogacin $*' +ubrayado $ , ' +igno de pesos $ - ' Arroba $ . ' Punto $ . ' $no puede ser el primer car(cter' no debe tener espacios en blanco en medio de la eti/ueta. Para definir una eti/ueta se usan los directi0os "12 "3. 4na eti/ueta puede tener los siguientes usos: a' )omo 0ariable.- E5emplo: num db 67 8 A num se le asocia el 0alor 67 y la direccin donde se encuentra dicho dato.

Tambi9n podemos hacer: num d: 676;< b' )omo direccin.- En la cual puede continuar el programa: +4=A: A"" A>2 "> ,,,,,,,,,,,,, ,,,,,,,,,,,,, ?=P +4=A OPERACIN O DIREC(I-A+, En este campo deber( estar el nombre de la operacin $=nemnico' /ue el micro deber( reali!ar2 o el nombre de una orden $directi0a' /ue el programa ensamblador deber( e5ecutar al momento de ensamblar nuestro programa. Al ensamblarse nuestro programa se genera un cdigo e5ecutable2 /ue el micro entiende. La directi0a no genera cdigo e5ecutable solo el mnemnico. $@nstruccin' $"irecti0a' Eti/A: =OB A>2 C%< A%%

)onstante E/u

Algunas directi0as ser#an: .=odel @ndica el modelo de memoria /ue usara el programa .+tacD @ndica el tamaEo del +tacD o pila ."ata @ndica el inicio del segmento de datos .)ode @ndica el inicio del segmento de cdigo End @ndica el fin del programa

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

$<

UNIDAD II Programacion. -------------------------------------------------------------------------------------------------------------OPERANDO+, $+i eFiste' proporciona informacin para la operacin /ue actGa sobre el. Para un elemento de datos2 el operando identifica su 0alor inicial. Por e5emplo2 en le definicin siguiente de un elemento de datos llamado )O4NTEH2 la operacin "3 significa Idefinir byteJ . ETIQUETA )ounter OPERACIN "3 OPERANDO COMENTARIO % 8 define un byte con 0alorK%

Para una instruccin un operando indica en donde reali!ar la operacin. 4na instruccin puede tener uno2 dos o tal 0e! ningun operando. A/u# est(n tres e5emplos: OPERACIN HET @N) A"" OPERANDO )> A>2 AC COMENTARIO 8 Hegresa 8 @ncrementa el registro )> 8 +uma AC al registro A>

COMEN(ARIO.+, Empie!an con $ 8 ' y me5oran la claridad del programa2 donde el propsito de un con5unto de instrucciones en especial no es claro. E.(RUC(URA DE UN PROGRAMA+, 4n programa escrito en lengua5e ensamblador se ensambla por medio de un programa ensamblador: Los programas mas comunes para el L%LL2 L%L6 con el Turboensamblador $TA+=' de la compaE#a 3orland y el de la compaE#a =icrosoft $=A+='. Los re/uerimientos m#nimos para un programa escrito en lengua5e ensamblador son: .=odel .+TA)M ."ATA ,,, ,,, ,,, .)O"E ,,, ,,, ,,, =OB A<2N)< @NT CA< EN" +=ALL C%% 8 indica el modelo de memoria $+=ALL' 8 indica el tamaEo del +TA)M $bytes' 8 indica /ue la siguiente informacin 8 deber( /uedar en el segmento de datos 8 indica /ue la siguiente informacin 8 es el programa e5ecutable 8necesario para terminar el programa 8 y regresar al prompt )O 8 @ndica el fin del programa

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

$2

UNIDAD II Programacion. -------------------------------------------------------------------------------------------------------------(IPO. DE MODELO. DE MEMORIA =odel =odel =odel =odel =odel TPNP +=ALL =E"@4= )O=PA) LAHRE )+ K "+ )+ K 6NMb )+ O 6NMb )+ Q 6NMb )+ O 6NMb )+ O 6NMb En A solo segmento d 6NM "+ K 6NMb "+ Q 6NMb "+ O 6NMb "+ O 6NMb$Los arreglos de datos deben ocupar menos de 6N M' "+ O 6NMb$Los arreglos de datos pueden ocupar mas de 6N Mb'

=odel <4RE

INICIALI/ACION DE DA(O. Los datos pueden tener diferentes longitudes2 asi podemos hablar de 3PTE+ $L bits'2 de palabras 1OH" $A6 bits' de doble palabra $SC bits'. "ependiendo de la longitud del dato se usa un directi0o diferente para declararlo. "3 Abyte "1 Cbyte "" Nbyte "T o "P 6byte "U Lbyte "T A%byte Podemos usar una eti/ueta para definir un arreglo2 e5emplo: Arreglo db %2 A2 C2 S2 N 8 define 7 bytes con 0alores$%2A2C2S2N'

Otra forma de iniciali!ar arreglo. Arreglo db db db db db % A C S N

"irecti0a "4P para definir una cierta cantidad de datos. T@LA db A%% dup $%' 8 define A%% bytes2 todos con 0alor de$ % '

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

$$

UNIDAD II Programacion. --------------------------------------------------------------------------------------------------------------

2.2 MODOS DE DIRECCIONAMIENTO


INMEDIATO.- El dato a cargar en el operando destino es una constante. El usuario especifica un byte o palabra como operando fuente. Esta constante se ensambla como parte de la instruccin. Por e5emplo: =OB A>2AL 8)oloca el num. AL en el reg. A>. DE REGISTRO.- El dato a cargar en el operando destino se obtiene de un registro . E5emplo : =OB A>2 3>

Es un e5emplo de direccionamiento de registro en donde la unidad de e5ecucin $E4' toma el operando del registro 3>2 determina como destino el registro A> y ordena a la AL4 lle0ar a cabo la operacin. DIRECTO.- El dato a cargar en el operando destino esta guardado en una 0ariable $Eti/ueta'. En este direccionamiento la direccin efecti0a $EA'2 para una localidad de memoria2 esta contenida en la instruccin. Para obtener la direccin de C% bits2 se suman el despla!amiento /ue tiene la eti/ueta y el contenido del registro "+. La siguiente instruccin es un e5emplo de este tipo de direccionamiento. =OB A>2 BAHA "onde pre0iamente se defini en el segmento de datos a BAHA BAHA "3 C%<

DE REGISTRO INDIRECTO.- El dato a cargar en el operando destino esta guardado en una 0ariable$Normalmente un arreglo' y se carga al operando destino indirectamente a tra09s de uno de los siguientes registros: 012 0P2 .I o DI+ Para e0itar confundir este modo de direccionamiento con el de registro2 en la instruccin2 los registros deben aparecer entre par9ntesis rectangulares. )omo la EA es una direccin y no el contenido de una localidad de memoria2 antes de utili!ar los registros mencionados2 estos deben contener direcciones. 4na t9cnica para asegurar lo anterior es utili!ar el operador OTT+ET. =OB 3>2 OTT+ET AHHERLO Este modo de direccionamiento se puede usar para colocar el contenido de la localidad de memoria a la /ue apunta 3>2 por e5emplo en A>. =OB A>2 V 3> W "onde V3>W es un despla!amiento relati0o a "+ $ "+:V 3> W '

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

$=

UNIDAD II Programacion. ------------------------------------------------------------------------------------------------------------- RELATIVO A LA BASE.- Al hacer uso de este modo de direccionamiento2 la EA del operando fuente se obtiene al sumar un despla!amiento a los siguientes registros: 0P o 01+ En este caso2 los registros deben contener la direccin del despla!amiento. 4n e5emplo del uso de este tipo de direccionamiento lo ofrece la siguiente instruccin: =OB A>2 V 3>XC W INDEXADO DIRECTO.- En este modo2 la $EA' es la suma del contenido de un registro #ndice #.I o DI% 3 un e$p4a5a'iento. 4n e5emplo comGn lo construye una secuencia de instrucciones2 donde primero se carga una direccin en un registro #ndice y despu9s la misma se combina con una localidad de memoria. =OB +@2 C =OB A>2 AHHERLOV +@ W En este caso2 en el registro A> se coloca el contenido de la localidad de memoria cuya direccin es la de AHHERLO X C. INDEXADO DE BASE.- La $EA' es la suma de los contenidos del registro base #01%2 un registro #ndice #.I o DI% 3 un e$p4a5a'iento $opcional'. La siguiente es una secuencia de instrucciones /ue ilustra este tipo de direccionamiento. =OB 3>2OTT+ET ET@U4ETA =OB +@2 =OB A>2V 3> X +@ XC W

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

$>

UNIDAD II Programacion. --------------------------------------------------------------------------------------------------------------

2.3 CONJUNTO DE INSTRUCCIONES


Las instrucciones est(n agrupadas en los siguientes grupos y subgrupos: A.- THAN+TEHEN)@A "E "ATO+. a' "e propsito general. b' EntradaY+alida. c' "e operando direccin. d' Transferencia de banderas. C.-@N+TH4))@ONE+ AH@T=ENT@)A+. a' +uma. b' Hesta. c' =ultiplicacin. d' "i0isin. S.-=AN@P4LA)@ON "E 3@T. a' Lgicas. b' "espla!amiento. c' Riro. N.-"E )A"ENA. 7.-"E THAN+TEHEN)@A "E PHORHA=A. a' @ncondicional. b' )ondicional. c' )ontrol de iteraciones. 6.-"E @NTEHH4P)@ONE+. ;.-)ONTHOL "EL PHO)E+A"OH. A' Operaciones con banderas. b' +incroni!acin eFtrema. c' NOP.

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

$?

UNIDAD II Programacion. --------------------------------------------------------------------------------------------------------------

CON6UN(O DE IN.(RUCCIONE.+ A' THAN+TEHEN)@A "E "ATO+. A' "E PHOPO+@TO RENEHAL A.- =OB destino2 Tuente C.- P4+< fuente S.- POP destino N.- >)<R destino2 fuente 7.- >LAT

8=ue0e datos 8=ete datos a la Pila 8+aca datos de la Pila 8@ntercambia contenidos 8Traduce $4so para tablas'

3' RH4PO "E ENTHA"A-+AL@"A. A.- @N acumulador2 puerto 8Lee un dato del Puerto C.- O4T puerto2 acumulador 8+aca un dato por el puerto )' "E OPEHAN"O "E "@HE))@ON. A.- LEA destino2 fuente 8)arga una direccin efecti0a C.- L"+ destino2 fuente 8)arga el reg. "e segmento datos S.- LE+ destino2 fuente 8)arga el reg. "e segmento eFtra "' THAN+TEHEN)@A "E 3AN"EHA+. A.- LA<T 8)arga al reg. A< con las banderas C.- +A<T 8En0#a el reg A< al reg. de 3anderas S.- P4+<T 8Ruarda las banderas en el stacD N.- POPT 8Lo /ue saca del stacD lo pone en el reg. "e banderas C' @N+TH4))@ONE+ AH@T=ET@)A+ A' "E +4=A A.C.S.N.7.A"" A") @N) "AA AAA destino2 fuente destino2 fuente destino 8+uma de nGmeros binarios 8+uma con carry 8 @ncrementos de A 8A5uste decimal despu9s de sumar 8A5uste A+)@@ despu9s de sumar

3' "E HE+TA A.- +43 C.- +33 S.- )=P N.- "A+ 7.- AA+ destino2 fuente destino2 fuente destino2 fuente 8resta 0alores binarios 8resta con borro: 8compara datos 8A5uste decimal despu9s de restar 8A5uste A+)@@ despu9s de restar

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

$@

UNIDAD II Programacion. --------------------------------------------------------------------------------------------------------------

)' "E =4LT@PL@)A)@ON. A.- =4L C.- @=4L S.- AA= fuente $sin signo' fuente $con signo' 8=ultiplica sin signo 8=ultiplica con signo$enteros' 8A5uste A+)@@ para la multiplicacin

"' "@B@+@ON A.- "@B fuente $sin signo' 8"i0ide sin signo C.- @"@B fuente $con signo' 8"i0ide con signo S.- AA" 8A5uste A+)@@ para la di0isin S' @N+TH4))@ONE+ "E =AN@P4LA)@ON "E 3@T+ A' LOR@)A+ A.C.S.N.7.6.NOT AN" OH >OH TE+T NER destino destino2 fuente destino2 fuente destino2 fuente destino2 fuente destino 8Negacin lgica $No' 8)on5uncin lgica $y' 8"isyuncin lgica $o' 8OH EFclusi0a 8Prueba bits 8Negacin

3' "E "E+PLA A=@ENTO A.C.S.N.+<L +AL +<H +AH destino2 contador destino2 contador destino2 contador destino2 contador 8)orrimiento lgico a la i!/uierda 8)orrimiento algebraico a la i!/. 8)orrimiento lgico a la "erecha 8 )orrimiento algebraico a la "er.

)' R@HO+ A.C.S.N.HOL HOH H)L H)H destino2 contador destino2 contador destino2 contador destino2 contador 8Hotacin a la i!/uierda 8Hotacin a la derecha 8 Hotacin a la i!/uierda con carry 8 Hotacin a la iderecha con carry

N' @N+TH4))@ONE+ "E )A"ENA A.- =OB+ cadena-destino2 cadena-fuente =OB+3 ----- =OB+1 C.- LO"+ cadena-fuente S.- +TO+ cadena-destino2 cadena-fuente +TO+3 -----+TO+1 8 =ue0e cadenas 8carga cadena 8Almacena una cadena

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

$A

UNIDAD II Programacion. -------------------------------------------------------------------------------------------------------------N.- )=P+ cadena-destino2 cadena-fuente )=P+3 ------)=P+1 7.- +)A+ cadena-destino +)A+3 ------+)A+1 8)ompara cadenas 8EFplora una cadena

7' @N+TH4))@ONE+ "E THAN+TEHEN)@A "E PHORHA=A

A' THAN+TEHEN)@A @N)ON"@)@ONAL A.- )ALL C.- HET S.- ?=P destino $HETN2 HETT' destino 8llama a un procedimiento 8regresa de un procedimiento 8+alto incondicional

3' THAN+TEHEN)@A )ON"@)@ONAL A.C.S.N.7.6.;.L.&.?3Y?NAE ?AEY?N3 ?3EY?NA ?AY?N3E ?EY? ?NEY?N ?LY?NRE ?REY?NL ?LEY?NR $+alta si es ba5o Y no arriba ni igual' )TKA $+alta si esta arriba o igual Y no esta ba5o' )TK% $+alta si es ba5o igual Y no esta arriba' )TKA o TKA $+alta si esta arriba Y no ba5o ni igual' )TK% y TK% $+alta si fueron iguales' TKA $+alta si no es igual a' TK% $menorYno mas grande ni igual' +T diferente de OT $mas grande o igual Yno menor' +TKOT $menor o igualYno mas grande' TKA o +T diferente de %T. $mas grandeYno menos ni igual' TK% o +TKOT $paridad puestoYsi hay paridad par' PTKA $paridad no puestaY paridad impar' PTK% $bit de signo puesto' +KA $bit de signo no puesto' +TK% $carry puesto' )TKA $carry no puesto' )TK% $sobreflu5o puesto' OTKA $sobreflu5o no puesto' OTKA

A%.- ?RY?NLE AA.- ?PY?PE AC.- ?NPY?PO AS.- ?+ AN.- ?N+ A7.- ?) A6.- ?N) A;.- ?O AL.- ?NO

)' )ONTHOL "E @TEHA)@ONE+ A.C.S.N.LOOP ET@U LOOPEYLOOP ET@U LOOPNEYLOOPN ET@U ?)> ET@U 8 Hepetir hasta /ue )>K% 8Hepetir hasta /ue )>K% o KA 8Hep. hasta /ue )>K% o K% 8+alta si )>K%

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

$B

UNIDAD II Programacion. -------------------------------------------------------------------------------------------------------------6' @N+TH4))@ONE+ "E @NTEHH4P)@ON A.C.@NT 0ector @HET 8peticin de @nterrupcin 8Hegreso de una interrupcin

;' @N+TH4))@ONE+ "E )ONTHOL "EL PHO)E+A"OH a. OPEHA)@ONE+ )ON 3AN"EHA+ A.C.S.N.7.6.;.+T) Pone la bandera de carry )KA )L) Limpia la bandera de carry )K% )=) )omplementa la bandera de carry +T" Pone la bandera de direccin "KA )L" Limpia la bandera de direccin "K% +T@ Pone la bandera de interrupcin habilitada @TKA )L@ Limpia la bandera de interrupcin habilitada @TK%

3. @N+TH4))@ONE+ "E )ONTHOL "EL PHO)E+A"OH A.C.<LT 1A@T Pone al micro en estado est(tico. Entra en edo. de espera hasta /ue se acti0e la l#nea TE+T.

L' @N+TH4))@ONE+ "E )ONBEH+@ON A.- )31 C.- )1" )on0ersin de 3yte a palabra )on0ersin de palabra a doble palabra

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

$;

UNIDAD II Programacion. --------------------------------------------------------------------------------------------------------------

2.4 MODOS DE PROGRAMACIN


EFisten C tipos de programas: a'.- Los programas .E>E b'.- Los programas .)O= Algunas de las diferencias b(sicas entre un programa /ue es para e5ecutarse como .E>E y un programa /ue es para e5ecutarse como .)O= implica el tamaEo del programa2 la segmentacin y la iniciali!acin. 4n programa .)O= es mas pe/ueEo /ue un programa .E>E 4n programa .)O= est( restringido a un solo segmento de 6NMb. El segmento de cdigo2 el segmento de datos2 el segmento de stacD y el segmento eFtra est(n todos traslapados en uno solo. Esto no sucede as# en los programas .E>E En un programa .)O= los datos est(n en el mismo segmento /ue el de cdigo2 por lo tanto la primera instruccin es un salto a donde continua el cdigo del programa 2 e0itando /ue el )P4 lea los datos como si fueran instrucciones. En los programas .E>E no eFiste este problema ya /ue el segmento de cdigo y el de datos est(n separados2 mas sin embargo las primeras instrucciones en este tipo de programas son para obtener la direccin en donde el sistema operati0o guardo los datos2 y carg(rsela al registro "+. =OB A>2 . "ATA =OB "+2 A>

DI*ERENCIA. 0A.ICA. EN .U *ORMA(O DE PROGRAMA: FORMATO .COM .=odel T@NP .)ode OHR A%%< +TAHT: ?=P @N@)@O BarA BarC @N@)@O: ,,,, ,,,, ,,,, ,,,, mo0 A<2N)< @nt CA< EN" "3 "3 %%< %%< FORMATO .EXE .=odel +=ALL <4RE .+TA)M C%% ."ATA BarA BarC db %%< db %%<

@N@)@O: mo0 A>2."ATA mo0 "+2A> ,,, ,,, ,,, mo0 A<2N)< int CA< EN" =<

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

UNIDAD II Programacion. --------------------------------------------------------------------------------------------------------------

PHORHA=A+ .)O= Todos los segmentos inician en la misma direccin )+K"+KE+K++ o sea /ue se encuentran traslapados en un segmento de 6NM $modelo T@NP'. El programa inicia en la direccin A%%<2 ya /ue este espacio lo reser0a para el P+P $Program +egment prefiF' La primera instruccin es brinco al inicio del cdigo2 reser0ando el espacio para datos. Tienen brincos y llamados cortos $NEAH'.

PHORHA=A+ .E>E Puede tener modelos de memoria2 desde el +=ALL hasta <4RE. +us segmentos pueden estar en direcciones diferentes. Al inicio del segmento de cdigos las primeras instrucciones son para recuperar la direccin del segmento de datos. Pueden tener ambos tipos de brincos y llamados $NEAH:TAH'.

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

=2

UNIDAD II Programacion. --------------------------------------------------------------------------------------------------------------

2.5 EJEMPLOS DE PROGRAMACIN BASICA P7I3E7 P74.7A3A DE E9E3P&4'Cormato .EDE)% Uso de las +unciones <2E* <;E y >(E de la INF $2E Funcion (01H) INT 21H AEG <2E Cuncion para leer 2 tecla del teclado* regresa el codigo asscii de la tecla presionada en el registro A& Funcion (09H) INT 21H AEG <;E Cuncion para sacar una cadena de caracteres a la pantalla* la cadena termina con un H y a encerrado entre comillas. (argar en el registro DD la EA de donde se encuentra la cadena de caracteres. Funcion (4CH) INT 21H AEG >(E Cuncion que sir e para terminar un programa y de ol er el control al sistema operati o. Funcion (09H) INT 21H .3odel .stacI .data let2 db let$ db 8mall 2<< 2=*2<*2<* J3i primer programa de ejemplo H J 2=*2<* J (ual mensaje deseas K2-=L H M

msg2 db 2=*2<* J3ensaje UN4 H J msg$ db 2=*2<* J3ensaje D48 H J msg= db 2=*2<* J3ensaje F7E8 H J .(ode mo mo a#* NDAFA ds* a#

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

=$

UNIDAD II Programacion. --------------------------------------------------------------------------------------------------------------

inicio% mo mo int lea mo int mo int mo mo int mo int mo mo int mo int mo mo int mo int e#it% END mo int

d#* o++set let2 a,* <;, $2, d#* Olet$P a,* <;, $2, a,* <2, $2, d#* o++set msg2 a,* <;, $2, a,* <2, $2, d#* o++set msg$ a,* <;, $2, a,* <2, $2, d#* o++set msg= a,* <;, $2, a,* <2, $2, a#* >(<<E $2,

3I(74P74(E8AD47E8 I 'Apuntes del Ing. 9orge Aguirre :.)

==

También podría gustarte