You are on page 1of 7

Arquitectura de Computadores

Trabajo Colaborativo 3

PRESENTADO POR
Jorge Osorio Meja. Cdigo: 71618675
Jos Gabriel Chima M. Cdigo: 1.027.998.887
Diego Andres Fuentes L. Cdigo: 1039099062

GRUPO
301302_60

TUTOR:
Anyelo Gerley Quintero

UNIVERSIDAD ABIERTA Y A DISTANCIA


2015

INTRODUCCION
El presente trabajo se hace con el fin de adquirir conocimientos sobre un tema
muy interesante Lenguaje

Assembler, se manejaran instrucciones, vamos a

trabajar con grupos de caracteres alfanumricos que simbolizan ordenes, se


creara un programa que nos va a permitir sumar, restar, multiplicar y dividir dos
nmeros.

OBJETIVOS
Que el estudiante identifique y aprenda cmo funciona el Lenguaje Assembler,
en sus diferentes facetas, instrucciones y comandos ms usados.

DESARROLLO
1.
Explicar mediante un grfico en qu consiste el repertorio de instrucciones que se maneja en Lenguaje
Assembler y analizar cmo es la segmentacin (modos de direccionamiento, tipos de direccionamiento, pila, memoria
interna y memoria convencional).

2. Presentar una tabla con 15 instrucciones del lenguaje Assembler explicando para que sirve cada instruccin. Indicar
Nombre de la instruccin, Sintaxis y un breve ejemplo
Nro.

Caracterstica Instruccin

Aritmtica Suma: Suma


los dos operandos y
guarda el resultado en el
operando destino
Compara dos campos de
datos
Guarda en la cima de la
pila 16 bits,
decrementando en la pila
en dos bytes

Instruc
cin

ADD

Sintaxis

ADD destino,
fuente

CMP

CMP

PUSH

PUSH: reg16
PUSH:mem16

Ejemplo

ADD reg,inmediato ADD BYTE PTR [SI],35


ADD reg,reg
ADD BX,DX
ADD mem,reg
ADD [BX],AX
ADD reg,mem ADD AH,[BX]

X CMP BX, 00 ; Compara Bx con cero


JZ B50 ;Si es cero salta aB50
. ;(Accin si es diferente de cero)
PUSH: CX
PUSH:TABLA (SI)
MOV CL, 03
MOV AL, 10110111B; 10110111
SHR AL, 01; 01101110 Un movimiento a la izquierda
SHR AL, CL ; 01110000

Desplazar o rotar bits


dentro de un registro

Incrementa Suma 1 al
contenido de un registro o
de una posicin de
memoria

SHL

INC

SHL Shift left

INC AX
(AX=AX+1)
INC DL
(DL=DL+1)

Tres movimientos ms
SHR AX, 03; Vlido para 80186 y procesadores posteriores
El primer SHL desplaza el contenido de AI un bit hacia la
izquierda
INC AX : (AX=AX+1)
INC DL : (DL=DL+1)
INC WORD PTR ES: (DI+4): Incrementa palabra contenida es
es DI + 4
4

Realiza una operacin de


Y lgico entre el
operando origen y el
operando destino.
Sirve para que el
procesador, en lugar de
ejecutar la siguiente
instruccin, pase a
ejecutar otra en lugar que
se denomina destino de
salto.
La instruccin LOOP,
requiere un valor inicial en
el registro CX, LOOP de
forma automtica
disminuye 1 de CX

Transferencia de datos
entre celdas de memoria,
registros y acumulador.

AND

AND destino, origen

JMP direccin
o
JMP

JMP SHORT
direccin

LOOP

LOOP [direccin
corta]

MOV

MOV destino
fuente

AND AX, BX;


: AX=AX AND BX
AND SI,ES:[DI] : SI=SI AND ES:[DI]
AND BX, 0A34H : BX=BX AND 0A34H
AND ES:[BX], CX : ES:[BX] AND CX
AND BYTE PTR [SI+4],5 : [SI+4],= [SI+4], AND 5

JMP A90
A90;mov ah,00
Salta a A90 que es una etiqueta dada a una instruccin Mov
ABC.ASM -> Imprime el abecedario
CODIGO SEGMENT
ASSUME CS:CODIGO
INICIO: MOV DL,65 ; Carcter inicial (A)
MOV CX,26 ; Nmero de letras
BUCLE: MOV AH,2 ; Servicio para imprimir carcter
INT 21H
INC DL ; Incrementar carcter actual
LOOP BUCLE ; Repetir mientras CX no sea cero
MOV AX,4C00H ; Salir al DOS
INT 21H
CODIGO ENDS
END INICIO
Este ejemplo :Gestiona un bucle, tomando el registro CX como instruccin
LOOP decrementa el valor de CX

10

Indica el final del programa


fuente.

END

END [Expresin]

11

Carga cadenas de un byte o


palabra al acumulador.

LODS

LODS

12

Genera el complemento a 2

NEG

NEG destino

END
END

INICIO

MOV SI, OFFSET VARABLE1


LODS

NEG AX (Si AX guarda el valor de -2 (FFFE) el resultado sera


que AX el valor de 0002

13

Transfiere el registro AH
al contenidos de las
banderas

LAHF

LAHF

14

Resta , instruccin
aritmtica

SUB

SUB destino,
fuente

15

Desplaza a la derecha los


bits en el registro
designado

SF ZF_AF PF_CF (
SUB AX, DX

MOV CL, 03
MOV BH, 10110111B; 10110111
RCR

RCL destino,
contador

SHR BH, 01; 11011011 Una rotacion a la derecha


SHR BH, CL; 00001011 Tres rotaciones a la derecha
SHR BX, 03; Vlido para 80186 y procesadores posteriores

3. Desarrollar un cdigo en un lenguaje ensamblador que permita sumar, restar, multiplicar y dividir dos nmeros de un
digito cada uno capturados por teclado y subir un video a la web donde explique cmo lo hizo, debe quedar evidencia
del estudiante que lo desarroll.
El video debe ser subido a Youtube y el enlace debe ser ubicado en el documento como aporte individual.
Se realizan los Videos y se suben a Youtube:
https://youtu.be/iFwQH-f70Mk

https://www.youtube.com/watch?v=tuC_Fy7KRoc

CONCLUSIONES
Los programas hechos en lenguaje ensamblador son generalmente ms
rpidos en su ejecucin y ocupan menos espacio de memoria.
A medida de que se aprende (hay que dedicarle mucho tiempo para
conocerlo y aprenderlo) un leguaje ensamblador se crean libreras de
funciones que le pueden facilitar mucho el trabajo.
En el lenguaje ensamblador cada enunciado o lnea produce una
instruccin de mquina.
Al generar el video y subirlo a la nube se vio otra faceta del curso.

BIBLIOGRAFIA
Monografas Miriam Jazmn Mendoza
Recuperado el 20 de septiembre de 2009, de Monografas Lenguaje
ensamblador:
Http://www.monografias.com /trabajos14/lenguaje-ensamblad
http://es.slideshare.net/andalmi/instrucciones-lenguaje-assembler
http://moisesrbb.tripod.com/unidad6.htm
https://www.youtube.com/watch?v=vWfx5syUYv4
https://books.google.com.co/books?isbn=8426714145
Unad (2015) Gua Integrada de Actividades. Disponible a travs de:
http://datateca.unad.edu.co/contenidos/301302/AVA_2015/Guia_Integrada_de_
Actividades_Academicas_301302_2015-2.pdf
comunidad.dragonjar.or (2015). tutorial completo de lenguaje ensamblador.
Disponible a travs de: http://comunidad.dragonjar.org/f177/tutorial-completode-lenguaje-ensamblador-8845/
Vittalia Internet S.L (2015) program ensamblador. Disponible a travs de:
http://www.solodrivers.com/manuales/programacion_ensamblador
Anyelo quintero .( 23 oct. 2015) Instalar Turboassembler, Dosbox, Notepad++
compilar.
Disponible
a
travs
de:
https://www.youtube.com/watch?v=Mf5qaxpnneM
SourceForge (2014-04-13) Turbo Assembler disponible a travs de:
http://sourceforge.net/projects/tasmforwindows/?source=directory
Current Version (2015) notepad ++ disponible a vraves de: https://notepadplus-plus.org/

You might also like