ejemplos lenguaje ensamblador

Páginas: 2 (304 palabras) Publicado: 20 de febrero de 2014
"Toma datos (de 1 byte c/u) de la variable Tabla (5 elementos) y cuenta cuantos de ellos son números impares y cuantos son pares, además guarda la información en dos variables adecuadasllamadas par e impar".
¿Cómo logra esto el programa? "Toma los datos de Tabla usando direccionamiento indexado y usando una instrucción AND y una máscara #$01 elimina todos los bits del dato exceptoel LSB que indica si el número es par o impar"
Pruebe el programa y si tiene dudas nos cuenta en el edmodo.

ORG RAMStart
Tabla DS.B 5
Impar DS.B 1
Par DS.B 1
ORG ROMStart
INCLUDE'MCUInit.inc'
Entry:
_Startup:
LDS #RAMEnd+1 ; initialize the stack pointer
; Call generated Device Initialization function
CALL MCU_init
mainLoop:
CLR Impar
CLR Par
LDX #$0000
Regrese: LDAATabla, X
ANDA #$01
BEQ Salto
INC Impar
BRA Sigue
Salto: INC Par

Sigue: INX
CPX #$05
BNE Regrese

STOP 

"Multiplica 2 números de 1 byte (cada uno) almacenados en memoria yalmacena el resultado en una variable de 2 bytes". Si me pregunta ¿cómo hace la multiplicación el programa? la respuesta es "suma el valor de Dato2 con si mismo tantas veces como lo indica el valor deDato1 y almacena el resultado en memoria"
Corra el programa con varios datos
a) Dato1 = $03 y Dato2 = $04 el resultado será Respuesta = $000C (3 x 4 = 12)
b) Dato1 = $03 y Dato2 = $FF elresultado será Respuesta = $02FD (3 x 255 = 765)
c) Dato1 = $FF y Dato2 = $FF el resultado será Respuesta = $FF01 (255 x 255 = 65025)
Si tiene dudas por favor enviarlas por el edmodo.

ORGRAMStart
Dato1 DS.B 1
Dato2 DS.B 1
Var DS.B 1
Respuesta DS.W 1
ORG ROMStart
INCLUDE 'MCUInit.inc'
Entry:
_Startup:
LDS #RAMEnd+1 ; initialize the stack pointer
; Call generated DeviceInitialization function
CALL MCU_init
mainLoop:
CLR Var
CLRB
CLC
LDAA Dato1
Sigue: ADDB Dato2
BCC Salto
INC Var
Salto: DECA
CMPA #$00
BNE Sigue
LDAA Var
STD Respuesta

STOP 
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Lenguaje ensamblador
  • Lenguaje Ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS