miércoles, 25 de septiembre de 2013

Conjunto de instrucciones programacion basica

INSTRUCCIONES DE TRANFERENCIA DE DATOS:

· MOV
· XCHG
· IN
· OUT
· XLAT
· LEA
· LDS
· LES
· LAHF
· SAHF
· PUSH FUENTE
· POP DESTINO
CONTROL DE BLUCLES (INSTRUCCIONES SIMPLES).
· INC
· DEC
· LOOP
· LOOPZ,LOOPE
· LOOPNZ,LOOPNE
· JCXZ
INSTRUCCIONES DE PRUEBAS, COMPARACION Y SALTOS.
· TEST
· CMP
· JMP
· JE, JZ
· JNE, JNZ
· JS
· JNS
· JP, JPE
· JNP, JOP
· JO
· JNO
· JB, JNAE
· JNB, JAE
· JBE, JNA
· JNBE, JA
· JL, JNGE
· JNL, JGE
· JLE,JNG
· JNLE, JG

INSTRUCCIONES DE LLAMADO Y RETORNO DE SUBRUTINAS.
· CALL
· RET

INSTRUCCIONES ARITMETICAS.
a. Grupo de adición:
· ADD
· ADC
· AAA
· DAA

b. Grupo de sustracción:
· SUB
· SBB
· AAS
· DAS

c. Grupo de multiplicación:
· MUL
· IMUL
· AAM

d. Grupo de división:
· DIV
· IDIV
· AAD

e. Conversiones:
· CBW
· CWD
· NEG

f. Tratamiento de cadenas:
· MOVC
· MOVW
· CMPC
· CMPW
· SCAC
· SCAW
· LODC
· LODW
· STOC
· STOW
· REP
· CLD
· STD

INSTRUCCIONES LOGICAS
· NOT
· AND
· OR
· XOR

INSTRUCCIONES DE DESPLAZAMIENTO, ROTACION Y ADEUDOS.
· SHL
· SHR
· SAR
· ROL
· ROR
· RCL
· RCR
· CLC
· STC
 
INSTRUCCIONES DE PILA
· PUSH
· POP
· PUSHF
· POPF

INSTRUCCIONES DE CONTROL DEL MICROPROCESADOR.
· NOP
· HLT
· WAIT
· LOCK
· ESC

INSTRUCCIONES DE INTERRUPCION
· STI
· CLI
· INT
· INTO
· IRET

LAS INSTRUCCIONES DE TRANSFERENCIA CONDICIONAL DEL CONTROL DEL PROGRAMA SE PUEDEN CLASIFICAR EN 3 GRUPOS:

1. Instrucciones usadas para comparar dos enteros sin signo:
a. JA o JNBE.
b. JAE o JNB.
c. JB o JNAE.
d. JBE o JNA.
e. JE o JZ.
f. JNE o JNZ.

2. Instrucciones usadas para comparar dos enteros con signo:
a. JG o JNLE.
b. JGE o JNL.
c. JL o JNGE.
d. JLE o JNG.

3. Instrucciones usadas según el estado de banderas:
a. JC
b. JNC
c. JNO
d. JNP o JPO
e. JNS
f. JO
g. JP o JPE
h. JS

martes, 24 de septiembre de 2013

martes, 17 de septiembre de 2013

Ejercicios

1. A qué tipo de direccionamiento corresponde cada una de las siguientes líneas. 

1.     LDA #100 :  Direccionamiento inmediato.

2.     MOVE AL,BL:  Direccionamiento registro.

3.     MOVE DX,CX: Direccionamiento registro.

4.     MOVE AX,DATO: Direccionamiento directo.

5.     MOVE AX,[100]:  Direccionamiento inmediato.

6.     MOVE AX,[BP]: direccionamiento de registro indirecto.

7.     MOVE AX,COUNT[DI]: registro indirecto con desplazamiento.

8.     MOVE AX[SI] :direccionamiento indirecto.


 2. Complete los siguientes enunciados.

a)     La memoria de un computador se compone de unidades de almacenamiento llamadas RAM y ROM.

b)    El byte se agrupa 8 unidades de almacenamiento

c)     La agrupación de 4 bits (inferiores y superiores se les llama Nibble).

d)    Unidad de control es quien crea y controla el flujo de datos.

e)     Dispositivos periféricos se encarga de transferir datos entre  cpu, memoria y periféricos.

f)     Unidad central de proceso se encuentran las diferentes señales encargadas de la entronización y control del sistema.

3. Escriba nombre y función de los registros.

a)AX Acumulador Para almacenar resultados, letra o escritura desde o hacia los puertos.


b)BX Registro Base Apuntador base o índice.


c)CX Registro Contador Utilizado en operaciones de iteración, como un contador que automáticamente se incrementa o decremento de acuerdo con el tipo de instrucción usada.


d)DX Registro de datos Se usa como puente para el acceso de datos.

e)DS Registro de segmento de datos Actúa como policía donde se encuentran los datos.

f)ES Registro de segmento extra Permite operaciones sobre cadenas, pero también puede ser una extensión de DS.

g)SS Registro de segmento de pila Maneja la posición de memoria donde se encuentra la pila.

h)CS Registro de segmento de código Aquí es donde se encuentra el código ejecutable de cada programa.

i)BP Registro de apuntadores base se usa para manipular la pila sin afectar al registro de segmentos.

j)SI Registro de índice fuente Maneja bloques de cadenas en memoria, siendo el índice fuente , representa la dirección donde se encuentra la cadena.

k)DI Registro índice destino Maneja Bloques de cadenas en memoria, siendo el índice destino, representa la dirección donde será copiada.

l)SP Registro apuntador de pila Apunta a una área especifica de memoria que sirve para almacenar datos bajo la estructura de pila.

m)IP Registro apuntador de siguiente instrucción Apunta la siguiente instrucción que será ejecutada en memoria.

n)F Registro de banderas Se describe el significado de cada bit en este registro.



domingo, 8 de septiembre de 2013

Respuestas a cuestionario.

1-1 Determine la configuración binaria de los siguientes números:
a)  6; 110
b) 14; 1110
c) 22; 10110
d) 28; 11100
e) 30; 11110

1-2 Sume los siguientes números binarios:
a) 00100010
b) 01100111
c) 00100000
d) 10010100

1-3 Halle el complemento a dos de los siguientes números binarios negativos.
a) 00010110=11101001+00000001=11101010
b) 00111101=11000010+00000001=11000011
c) 00111100=11000011+00000001=11000100

1-4 Encuentre el valor positivo (absoluto) de los siguientes números binarios negativos. 
a) 11001000=00110111+00000001=00111000
b) 10111101=01000010+00000001=01000011
c) 11111110=00000001+00000001=00000010
d) 11111111=00000000+00000001=00000001


1-5 Determine la representación hexadecimal de los valores siguientes.
a) Q=51h
b) 7=37h
c) 01011101= 5Dh
d) 01110111= 77h

1-6 Sume los números hexadecimales siguientes.
a) 23A6+022=23C8
b) 51FD+0003=5200
c) 7779+0887=8000
d) EABE+26C4=11182
e) FBAC+0CBE=1086A

1-7 Determine la representación hexadecimal de los  números decimales siguientes.
a) 19 = 13h 
b)33 = 21h 
c) 89 = 59h 
d) 255 = FF 
e) 4095 = FFF 
f) 63398 = F7A6


1-8 Proporcione la configuración ASCII. En bits de los siguientes caracteres de un byte.
a) P=50h=01010000
b) p=70h=01110000
c) #=23h=00100011
d) 5=35h=00110101

1-9 ¿Cual es el objetivo del procesador?
Realiza todo el procesamiento de datos e instrucciones.

1-10 ¿Cuales son las dos clases principales de memoria en la pc y cuales y cuales sus principales usos?
ROM: (Read Only Memory) Realiza el proceso de arranque y maneja la entrada/salida.
RAM: (Random Access Memory) Es la memoria donde los programas y datos residen temporalmente cuando se ejecutan

1-11 Muestre como el sistema almacena 012345hex como un valor en la memoria.
01 23 45 = 45 23 01

1-12 Explique lo siguiente: 
a) Segmento: Sección de un programa de hasta 64k en tamaño con código, datos o pila.
b) Desplazamiento (offset): La distancia en bytes desde la dirección del segmento.
c) Limite de direccionamiento: 64K. 

1-13  ¿Cuales son ?
a) Las tres clases de segmento: Tamaño de codigo, datos y pila. 
b) Su tamaño maximo: 64K. 
c) El limite de dirección en que inician: 16 decimal o 10 hex.

1-14 Señale el objetivo de cada uno de los 3 registros de segmentos.
a) CS: Indica la dirección de una instrucción que es buscada para su ejecución
b) DS: Genera una referencia a la localidad de un byte especifico en el segmento de datos.
c) SS: Indica la palabra actual en la pila que está siendo direccionada.

1-15 Explique que registros se utilizan para los siguientes propositos:
a) Sumar y restar: AX,BX,CX
b) Contar ciclos: CX
c) Multiplicar y dividir: AX,DX
d) Segmentos de direccionamiento: SI,DI
e) Indicación de un resultado igual a 0: ZF
f) Desplazamiento de dirección de una instrucción que se va a ejecutar: DF

1-16 Muestre el registro EAX y el tamaño y posicion de:
AH: 8 bits, AL: 8 bits, AX: 16 bits, EAX: 32 bits.

1-17 Codifique las instrucciones en lenguaje de ensamblador para mover el numero 25 a los registros siguientes.  
CH: MOV CH,25
CL: MOV CL,25
CX: MOV CX,25
ECX: MOV ECX,25