Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Los registros del 8086 podrían clasificarse en tres grupos de acuerdo con sus funciones. El
grupo de datos, que es esencialmente el conjunto de registros aritméticos; el grupo de
apuntadores, que incluye los registros base e índices y también el contador Asignatura.
El grupo de registros de datos o registros generales son registros de 16 bits, pudiéndose
usar cada uno de ellos como dos registros de 8 bits. Aun siendo registros de uso general
tiene asignadas unas operaciones específicas. Así, por ejemplo, el AX es el acumulador de
16 bits y usándolo a veces provoca que el ensamblador produzca un lenguaje máquina
codificado en muy pocos octetos. Se emplea en multiplicaciones, divisiones,
entradas/salidas, etc.; el registro BX, se utiliza como registro base para el direccionamiento
de memoria; el registro CX, se utiliza como contador y almacenaje de datos y el registro
DX, se utiliza para almacenar datos de 16 bits.
Puede pensarse que es una extensión del registro AX para multiplicaciones y divisiones con
16 bits. Otra de sus funciones específicas es para almacenar la dirección de E/S durante
algunas operaciones de E/S. El grupo de apuntadores, es decir, punteros e índices está
formado por los registros IP, SP, BP, SI, DI. Los registros punteros son dos:
• IP como registro puntero de instrucciones conocido principalmente como contador de
programa. Este contiene un valor de 16 bits que es un desplazamiento sobre la dirección del
registro CS (segmento de código) que más adelante detallaremos.
• SP como registro de pila. El registro BP actúa como base de la dirección de la pila. Los
registros punteros de instrucciones (IP) y puntero de pila (SP) se encargan del control de
flujo del programa. Los registros SI y DI actúan como índices asociados al registro DS
(segmento de datos). El grupo de registros de segmento está formado por los registros CS,
SS, DS y ES.
• CS (segmento de código).
• DS (segmento de datos).
• SS (segmento de pila).
• ES (segmento extra)
Características de los procesadores CISC
El tamaño del código es pequeño, lo que implica una baja necesidad de memoria RAM
Las instrucciones complejas suelen necesitar más de un ciclo de reloj para ejecutar el
código
Se requieren menos instrucciones para escribir un software
Ofrece programación más sencilla en lenguaje ensamblador
Soporte para una estructura de datos compleja y fácil de compilar en lenguajes de alto nivel
Compuesto por menos registros y más nodos de direccionamiento, habitualmente entre 5 y
20
Instrucciones pueden ser más grandes que una sola palabra
Se enfatiza la construcción de instrucciones en el hardware, ya que es más rápido que crear
el software
Ventajas de los procesadores CISC
Para el compilador se requiere de poco esfuerzo para traducir programas de alto nivel o
lenguajes de instrucciones a lenguaje ensamblador o máquina
El tamaño del código es corto, reduciendo los requisitos de memoria
Almacenar las instrucciones CISC requieren de menos cantidad de memoria RAM
Genera procesos de administración de uso de energía que permiten ajustar la velocidad y el
voltaje del reloj
Requiere de menos instrucciones configuradas para realizar la misma instrucción que la
arquitectura RISC
Pueden requerir de varios ciclos de reloj para completar una instrucción de un software
El rendimiento del equipo sufre un descenso debido a la velocidad del reloj
La ejecución mediante canalización en procesadores CISC puede ser realmente complicado
Este diseño de procesadores requiere muchos más transistores que la arquitectura RISC
Utilizan sobre el 20% de las instrucciones existentes en un evento de programación
Tienen un diseño mucho mayor que la arquitectura RISC, lo cual conlleva más generación
de temperatura, mayor consumo y mayor requisito de espacio físico
Bits y Bytes
SISTEMA OCTAL
El sistema numérico en base 8 se llama octal y utiliza los dígitos 0
a 7.
Ejemplos:
164(10)=x(8)
164:8= 20, resto 4
20:8= 2, resto 4
2:8=0, resto 2
entonces 164(10) = 244(8)
SISTEMA DECIMAL
sistema hexadecimal
El sistema hexadecimal (abreviado hex.) es el sistema de
numeración posicional que tiene como base el 16. Su uso actual
está muy vinculado a la informática y ciencias de la
computación donde las operaciones de la CPU suelen usar
el byte u octeto como unidad básica de memoria, debido a que un
byte representa valores posibles, y esto puede representarse
como que equivale al número en base 16 dos dígitos
hexadecimales corresponden exactamente a un byte.
En principio, dado que el sistema usual de numeración es de
base decimal y, por ello, solo se dispone de diez dígitos, se adoptó
la convención de usar las seis primeras letras del alfabeto latino
para suplir los dígitos que faltan. El conjunto de símbolos es el
siguiente
Convertir los cuatro (4) últimos números de su
identificación a binario y hexadecimal, explicando el Dec Hex Binario
procedimiento. 0 0 0 0 0 0
Números a convertir a binario: 18,91 1 1 0 0 0 1
18 2 2 0 0 1 0
2 3 3 0 0 1 1
9 0
9 1
2 18=100102 4 4 0 1 0 0
4
4 2 0 5 5 0 1 0 1
2/
1
0 6 6 0 1 1 0
1 7 7 0 1 1 1
91/2=45/2=22/2=11/2=10/=5/2=2/=1
8 8 1 0 0 0
1 1 0 1 0 1 0 1
9 9 1 0 0 1
91=101010112 10 A 1 0 1 0
Sistema hexadecimal 11 B 1 0 1 1
Otro código que se usa con cierta frecuencia es el hexadecimal, es decir, 12 C 1 1 0 0
en base dieciséis. 13 D 1 1 0 1
Consiste en utilizar las letras A, B, C, D, E y F para representar los 14 E 1 1 1 0
números del diez al quince, mientras que para el dieciséis emplearemos el
15 F 1 1 1 1
1 y el 0.
Conversión de binario a hexadecimal
Esta conversión se realiza con la tabla de equivalencia donde tomamos los valores binarios
y los agrupamos en serie de 4 dígitos y realizamos el comparativo con la tabla de
equivalencia tomando el valor según corresponda, el valor encontrado correspondería al
número hexadecimal representado por el 16
El resultado que se encuentra a continuación representa los 4 últimos dígitos de mi
documento de identificación en 2 grupos.
[0001][0010]2 =( 1, 2 )16 los dos números en corchetes seria el número hexadecimal
1 2
[1010] [1011]2 =( A,B )16
A B
Ahora realizaremos la conversión de los 4 dígitos en conjunto.
1891/2 =945/2=472/2 =236/2 =118/2=59/2 =29/2 =14/2=7/2 =3/2 =1
1 1 0 0 0 1 1 0 1 1 𝟏2
1891= 1 1 0 0 0 1 1 0 1 1 𝟏2
Ahora realizaremos la conversión de binario a hexadecimal utilizando la tabla de
equivalencia
[0 1 1 0 ] [0 0 1 1] [ 0 1 1 𝟏]2 = (6, 3, 7 )16 este sería nuestro hexadecimal
6 3 7