Ensamblador









Cuestionario de Preguntas:

Tarea 1: Realizar la siguiente conversión:
		1. (4302)5 -> (    )3
	
Ejercicio 1: Realizar la siguiente conversión usando los algoritmos vistos en clase:
		1. (43302.102103)5 -> (    )16
	
Tarea 2: Realizar las siguientes conversiones usando los algoritmos vistos en clase:
		1. (31211.3002)4 -> (    )6
		2. (A31BC.4F2)16 -> (    )9
		3. (A3112F2.AB02)16  -> (    )2
	
Lista de ejercicios 1
Lista de ejercicios 2


Antología:

Portafolio Presentación
Portafolio Electrónico
Conversión de base (b) a base (c) Carlos Pes
Así funciona el sistema numérico binario
Los números y las operaciones aritméticas
Wikipedia: Sistema hexadecimal
Lenguaje Ensamblador
Lenguaje Ensamblador Básico
Lenguaje Ensamblador
Lenguaje Ensamblador para PC
Norton Guide Collection, Assembler
TASM 2.x / MASM 6.x Assembly Language - Norton Guide
Google Libros: Lenguaje ensamblador y programación para IBM PC y compatibles
Google Libros: Ejercicios de ensamblador para la arquitectura x86-32


Material Visual:

Sistemas de Numeración
Sistemas de Numeración (2a. Parte)
Punto Flotante
Arquitectura


Notas:

Notas de Ensamblador
Macroensamblador
Interrupciones
Manejo Disco


Programas de Ejemplo:

DOS Box


Manual de Prácticas de Laboratorio:

Práctica 1

  1. Realizar un algoritmo (pseudocódigo o diagrama de flujo) que lea una cadena.
  2. Invertir la cadena dada.
  3. Contar cuantos carácteres tiene.

Práctica 2

  1. Realizar un algoritmo (pseudocódigo o diagrama de flujo) que lea como datos de entrada: Un número, una base origen y una base destino.
  2. El algoritmo tiene que revisar, dados los datos de entrada que algoritmos de los vistos en clase debe aplicar (y aplicarlos).
  3. Además debe verificar que el número dado esté en la base origen.

Práctica 3

Dentro del DEBUG realizar:
  1. Con el comando A introducir:
    	MOV AX, 1234
    	MOV BL, 23
    	DIV BL
    	NOP
      
  2. Trazar el conjunto de instrucciones con el comando T.
  3. Si el comando DIV realiza la división de dos números, contestar:
    ¿Cuál es el dividendo?
    ¿Cuál es el divisor?
    ¿Dónde quedaron los resultados (cociente y residuo)?
  4. Entregar por escrito el paso 3 con el nombre de los integrantes.

Práctica 4

Dentro del DEBUG realizar:
  1. Con el comando A introducir:
    	MOV AX, 0023
    	MOV CL, 01
    	SHL AX, CL
    	SHL AX, CL
    	SHL AX, CL
    	SHL AX, CL
    	MOV BX, 0023
    	SHR BX, CL
    	SHR BX, CL
    	SHR BX, CL
    	SHR BX, CL
            NOP
      
  2. Trazar el conjunto de instrucciones con el comando T.
  3. A nivel de bits analizar que hacen las instrucciones SHL y SHR (Revisando AX y BX antes y después de la ejecución de las instrucciones).
  4. Contestar:
    ¿Qué hacen las instrucciones?
    ¿Cómo quedaron los resultados en los registros AX y BX?
  5. Entregar por escrito el paso 4 con el nombre de los integrantes.

Práctica 5

Dentro del DEBUG realizar:
  1. Con el comando A introducir:
    	LEA SI,[0200]
    	LEA DI,[0220]
    	MOV CX,0010
    	MOV AH,[SI]
    	MOV [DI],AH
    	INC SI
    	INC DI
    	LOOP 010B
    	NOP
      
  2. Introducir con el comando E la cadena "Hola mundo", en la dirección 200.
  3. Revisar con el comando D qué datos tiene la memoria en la dirección 200 y 220.
  4. Trazar el conjunto de instrucciones con el comando T.
  5. Revisar la memoria con el comando D, comparando la dirección 200 con la 220.
  6. Contestar:
    ¿Qué hace el programa?
  7. Entregar por escrito el paso 5 con el nombre de los integrantes.
NOTA: El trabajo del laboratorio puede ser realizado en equipo.