Está en la página 1de 288

Jul-13

1_ XOR
2_ BYTE, SIGNADO Y NO SIGNADO
3_ NEG AX
4_ IP 0345
5_ TIEMPO DE BUSQUEDA
6_ LRU
7_ HZ
1 hz es 1 ciclo / seg
1 seg son 10^-9 ns la rta es 10^9 hz nuse porq
8_INTA (Interrupt Acknowledge). El INTR es el pedido de interrupcin que se enva a la APIC (Interru
9_ Mb
u10 a)AX=0036
b)0040 : 0106
c)0019(h) -----> ojo el 1 te lo metes en el orto, es del carry no se pone 10019 se pone 0019
u4) es el 0 - 1 en binario seria 0000 0000 - 0000 0001 => 0000 0000 + CA2(- 0000 0001) = 1111
quedando 1 01111111 00000000000000000000000(2)
se verifica puesto que is queremos hacer el camino inverso:

tenemos 1 que es el signo y es engativo


el exponente es 127 - 127 = 0.. 2^0 lo guardo por ah que lo voy a utilizar mas tarde
de la mantiza no sacamos nada.. Cero 0 +1 = 1 . Y ahora usamos el 2^0 de arriba porque hace

u8) 4 bytes
u7) 19 y 1 .. Ni idea porque.. Son 2 bancos? Debe ser 2^1 y lo otro porque son 20 bits

ultima) es direccionamiento inmediato ya que el enunciado te est diciendo que el operando resid

Final del 13 , 02 , 2013 Link de utnianos: (solo para ve

como se denomina la estructura de datos que se utiliza en determinadas ocaciones para resguarda
Pila

Cual es el nombre generico de las dos zonas logicas en las que se divide cualquier cara de un disco
pistas y sectores
expresar la velocidad media de giro en MS de un disco que gira a 5400 RPM
1 segundo son 1000 ms
5400 RPM --------60 seg
x
------------1 seg
x=90 rev/seg
90 -----------1 seg
1 -------------x seg
x=0,01seg--------> 1 rev en 11,1 ms

-relacionado con la lgica digital, que elemento permite el almacenamiento de un bit en un registr
Biestables , SRAM

-Relacionado con el procesador Pentium. Como se denominan las instrucciones al registro acumula
EAX AX AH AL

-Relacionado con una instruccin exprese que significa que la instruccin tenga distintos modos de
indica donde se aloja el dato. Busqueda de operando. Cambia en cuanto a sus bits.

-relacionado con el micro, como se denomina a su capacidad de atender acontecimientos causados por otros

control de interrupciones, interrupcion no enmascarable


-relacionado con las instrucciones en que unidad se mide el ciclo completo de una instruccin?

ciclo por segundo , 1 ciclo/ segundo = 1 Hz.

Cuntos nanosegundos tarda un ciclo de reloj para una computadora que trabaja con una frecuencia de 25MH

Recordemos que cada hercio es un ciclo por segundo, lo que significa que un procesador a 3800 MHz viene realizando tre

1 hz es 1 ciclo por segundo

1 MHz = 1 milln de hertz.


25 MHZ= 25000000/seg
1 seg -------25 000 000 ciclos
x seg -------- 1 ciclo
1 ciclo se hace en 1/25000000 seg = 4 x10-8= 40 x 10-9 = 40nanosegundos
otra forma mas falopera:
0,04 x10^-6 = 0,04 x10^-6 * 1000/1000 = 0,04 x10^-6

* 10^3*

-que modulo especial gestiona las seales provenientes de dispositivos? Y cual es el nombre de dichos seal

Modulo de E/S , interrupciones. Oooo APIC IRQ


-que significa E/S mapeada en memoria o memory mapped?

Se puede usar todas las instrucciones que permiten acceder a memoria.


Mapeando el rea de E/S en memoria pueden utilizar todas las instrucciones generales, para acced

practica
NOTA: EL COMPLEMENTO A2 ES BUSCAR EL PRIMER UNO DE DERECHA A IZQUIERDA Y DEJARLO AS
100 (10) en binario es 1100100(2) CA= (es el complemento A2) es 0011100 CR (el A1) es 001101
8F (16) en binario es 10001111(2) CA = 01110001 el CR= 01110000
44(5) es 24(10) es 11000(2) CA 01000 CR 00111

2) a) sumar todo
b) sumar todo y dividirlo por el tamao de las paginas
c) (por operativos) tamao de memoria = offset (tamao de pagina) * cantidad de paginas
el offset es el corrimiento, o sea cuanto me puedo correr en 1 pagina es decir su tamao , si la pag
con esta explicacion => 2^20 = 2^12 * 2^algo algo=8.. Entonces 2^8 es la cantidad de

d)Si la primera pgina del cdigo se aloja en el frame (el hueco para la pagina ) 127 cul es la direccin e
127 es el numero de la pagina. 127 en binario es 01111111
El primer byte arranca desde la primer posicin dentro de la pagina (o sea, posicin cero)
P7-P6-P5-P4-P3-P2-P1-P0-D11-D10-D09-D08-D07-D06-D05-D04-D03-D02-D01-D00
01111111000000000000
Pasando a hexa
0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
7F000

Final arquitectura 27/02/13 Link de utnianos: (solo para ver

tema1:que seales intervienen en el tratamiento de una solicitud de interrupcin enmascarable? Tema2:que

Eflags IF, tema2 : se producen a travs del hardware activando patas del procesador
*Que es una INT n ? Y en que clasificacin entra?

INT n: es una instruccin que permite que se genere una interrupcin no enmascarable poniendo e

*como se denominan las arquitecturas que permiten la ejecucion en paralelo de varios causes de i
superescalares
*exprese como minimo 4 etapas del ciclo de una instruccin cuya ejecucin se denomine segmentada

busqueda de la isntruccion,decodificaicion, busqueda de los operandos, ejecucion, escritura en me

*indique las condiciones que debe cumplir un segmento para que la unidad de segmetnacion no genere la e

P=1, debe estar en memoria, y no se debe sobrepsar loq ue dice el campo limite

*donde se referencia el nivel de privilegio en una direccin virtual y donde lo consulta la unidad de segment
El nivel de Privilegio en una Dir. Virtual se referencia en el campo RPL, y la Unidad de Segmentacin lo cheq

*que se almacena en una TLB y bajo que circunstancias decrece significativamente su tasa de acierto?
se almacenan las ultimas direcciones fisicas traducidas por la unidad de paginacion, si la direccion esta en la

*como se denomina a una transferencia de E/S que se basa en el censado continuo del estado del perifrico
programada

*modo de direccionamiento en el que el operando se encuentra directamente definido en el campo de refere


modo de direccionamiento inmediato

*Cmo se denominan las transferencias de E/S que aprovechan los ciclos en que el bus se encuentra ocios
DMA
*Modo de direccionamiento en el cual el cdigo de operacin determina el operando.

direccionamiento directo
PRACTICO: (el de conversion paja)
Una memoria cache con una organizacin asociativa de 4 vias (o conjuntos) tiene 8 bloques de 8bytes cada

*Cual es el formato o estructura q tiene la direccin para controlador de cache pueda determinar s
ETIQUETA CONJUNTO DATO

Bits de etiqueta:
Si la MP tiene 2048 bytes = 2^11.. 11 bits para la direccin. //a simple vista se ve que va a ser X * 2^3 *
>Bits etiqueta:
Debemos saber la cantidad de grupos en la cache, cada grupo tendr 8 bloques de 8 bytes.
Cantidad de grupos en ram: 2k/64bytes = 32 grupos. 2^5 => 5 bits para la etiqueta
>Bits conjunto:
2^3
>Bits de byte o posicin
Cada bloque tiene 8 bytes asi que necesitamos 3 bits . 2^3
-Los bits de la etiqueta permiten identificar la VIA.
*cual es el criterio de reemplazo que se recomienda en este tipo de org

LRU

*la cache almacena cuatnos bytes?y a cuantos se accede por vez?


Almacena 4*8*8 =256 bytes
Se acceden a 8 bytes por vez (tamao bloque)

*si un bloque de memoria se organiza como una matriz de 1024M *8. Cual es su capacidad expresada en la
1024M x 8 --> 1024M x 8bits = 1024M x 1Byte = 1024MB = 1GB

1GB= 2^30 => Entonces 1ra direccin 30 bits en cero y ultima 30bits en 1. RANGO = 00000000 - 3FFFFFFF
11

1111

1111

1111

1111

1111

1111 1111

=
3

Final 06-mar-2013 Link de utnianos: http://www.utnianos.c


-La compuerta cuya tabla de verdad es igual a la de una compuerta NAND con sus entradas unidas es
NOT

-En una arquitectura de 32 bits los tamaos mximos de los registros de calculo y de los registros de segme
32 registros de calculo y 16 bits registros de segmento

-El tiempo para localizar un sector en una pista o cilindro del disco cuando el cabezal ya se encuentra posicio

latencia rotacional
-las tcnicas q permiten actualizar el contentido de la cache se denominan polticas de escritura

F: se denominan algoritmso de actualziacion : LRU RANDOM FIFO

-La compuerta cuya tabla de verdad presenta 1 en la saldida cuando el numero de variables en 1 es impar
XOR
-en el set x86 la instruccin para transferir un dato en el segmento es:

POP
-que registros se deben actualizar cuando se retorna a un procedimiento dentro de un mismo segmento de

ECX
-En que se mide la velocidad efectiva de un procesador y la duracin de un ciclo de reloj respectivamente?
FLOPS/NANOSEGUNDOS.
-las variables declaradas como cadenas de caracteres o string se guardan en la memoria como RAM como:

Big endian Numerico => little endian


No numerico y codigo => big endian

-la seal de peticin de interrupcin para la atencin de un evento prioritario y el terminal correspondiente s

NMI
-mega es 2^20
-peta es 2^50
-giga es 2^30
-tera es 2^40

Se esta ejecutando una instruccin cuyo simbolico de maquna es JNZ 120, que ocupa 3bytes en memoria lu
Z=1 (indica que el resultado fue cero) => no se realiza JNZ 120
CS : IP +3bytes-------> Dire en hexa : 0040: 0106
Z=0 (resultado dio distinto de cero) => Dire en hexa : 0040:120 (el registro ip apuntara a la poss 120)

Si en la referencia 0120 se aloja una instruccin ADD BH CH cual ser el valor del registro destino en caso d
-Si z=1 (resultado dio cero) importa
BH es el registro destino y su valor es:
CX= 001D (por dato)
CH (mayor peso) CL(menor peso)
00 1D
BX=001C (por dato)
BH(mayor peso) BL(menor peso)
00 1C
Destino,origen
ADD BH,CH
00 + 00 = 00 => BH =00
-Si z=0 (resultado distinto de cero) no importa

EJERCICIO DE VALOR EN PUNTO FLOTANTE


RECORDAR QUE 1 BIT ES DEL SIGNO (MENOS ES 1 , MAS ES 0)
8 BITS PARA : 127 + CANT DE LUGARES QUE CORRI LA COMA HASTA EL PRIMER UNO (HASTA EL PRIMER U
ejemplo 1,0101010 EL NUMERO ENTONCES 0101010 ES LA MANTIZA + CANT DE CEROS HASTA LLEGAR A

EJERCICIOD DE LATENCIA PROMEDIO


3600 RPM
LATENCIA PROMEDIO
LP=1/(2*RPS)
3600 --------60 seg
x ---------------1 seg
x=60
60 rev por seg
1/2*60 = 1/120 = 0,0083 seg que como 1 seg son 1000 ms entonces 8,33 ms.

26/9/2013

Link de utnianos : http://www.utnianos.com.ar/foro/tema-final-resuelto-arquitectura-de-computado


*el servicio que atiende una interrupcin es apuntada por IDT

*Un cdigo de operacin invalido genera un evento denominado .. de tipo .. en cambio una batera agotandose genera

*El tiempo que transcurre desde que se da una orden de lectura y el contenido de memoria esta disponible para ser transferido es TIE

*el rea de memoria en donde se aloja los objetos de una tarea en estado de ejecucin se denomina LDT en cambio el rea de memor

*Un segmento es un bloque lgico de tamao fijo que para el procesador estudiado puede ser de 4k o de 4M
F, de tamao fijo son las paginas, los segmentos son de tamao variablo.

*El calculo de la direccin efectiva de una instruccin involucra los registros CS y el campo DATA de la instruccin
F, CS *10+DESPLAZAMIENTO

*Cuando se esta ejecutando una tarea concreta se activan la GDT y la LDT de la tarea en curso , cada una de ellas se relacionan con lo
v

*cuando una MP es de 4G esta dividida en paginas de 4k se necesitan 22 bits para identificar el numero de frame pues la cantidad tota
F, 4g es 4 x 2^30 dividido 4*1024 (4k) es 2^20, se necesitan 20 bits, porque la cantidad de los mismos es 2^20 bytes.. o sea 1 M.

*Durante la ejecucin de una instruccin aritmtica se puede producir un desbordamiento u overflow que es considerado como un fallo
F, es considerado un fallo o interrupcion INTO

5. practico: verbos distintos


Salto

call, ret

Transferencia
Aritmtico
Lgico

mov
add , sbb

and

practica

*el primero es de conversion, forget it


*el de assembler te lo debo

*para una instruccin de 16 bits con una referencia a dato almacenado en una matriz de memoria
*indicar el tamao necesario del campo DATA para poder accederlo en modo directo y los valores p
instruccin = COP + DATA

16 = COP + 12 (el 12 sale de 2^12=4096 es la cantidad de bits apra direccionar 4096 x8 o se


con 12 bits podes acceder a: 4 4 4 o sea 000-FFF

*si los restantes bits corresponden al codigo de operacin y este solo determina el verbo indicar cu
4 bits de la cuenta de arriba, call mov sum and

Final 11/12/2013

http://www.utnianos.com.ar/foro/

*Memorias que constituyen un subsistema Cache


memoria de datos y memoria de etiquetas o instrucciones y datos tmb
*nombre del bloque en memoria RAM en elq ue se carga una pagina
frame o marco de pagina

*Nombre al menos tres seales del bus relacionadas con una transferencia DMA
MEMW ; MEMR ; T/C
*indique al menos dos tipos de transferencia de E/S
programada, por interrupciones, DMA

*que tipo de interrupciones se habilitan con la activacin de una bandera del registro de estado?
enmascarables (aca te haces el cuadrito y sale, a mi me cuesta un huevo acordarme cual es cual,
interrupc externas NMI no enmascarables, INTR enmascarables , puede ser ignorada depende
interrupc internas INT N es una instruccin que permite que se genere una interrupcin no enmas

*instruccin en assembler que permite consultar por overflow luego de una operacin arit
JO salta si overflwo es 1 , JNO salta si overflow es 0
*cuando se desea consultar por una condicin de igual en una estructura condicional que
resta ,SUB ,(Z=0)
*tecnica de ejecucin en paralelo a nivel instruccin
pipeline

PRACTICA
El campo desplazamiento en una direccin lineal almacena el numero 37B.
*con esa cantidad de bits de desplazamiento Cul es el tamao de la pagina?
37B. 4 4 4. 2^12=4kb
*cual es el desplazamiento correspondiente al byte alojado en la decima posicin?
37B+10 = 038B

*Si el numero de frame en donde esta la pagina alojada en memoria es el 00031Cmo se


00031 *10 + desplazamiento
000310 + 37B = 00068B=> direccin fsica 00031:00068B
En el tamao correspondiente una doble palabra (4bytes)
*cuantas combinaciones binarias se pueden representar?
4 bytes son 32 bits 0000 0000 0000 0000 0000 0000 0000 0000
2^32 -1 combinaciones posibles.
*cuantas direcciones segmentadas en modo real?
1MB/32
*cuantos dgitos en BCD ?????
cada digito BCD 4 bits, por lo que 32/4 = 8 digitos.

CALCULO

MOV CX 04
MOV AX 02
MUL AX 02
LOOP CALCULO
MOV BX AX
AND BX 0F

*AX?
*CX?
*BX?
MUL AX,02 --> AX = 02 * 02 = 04
LOOP CALCULO --> Decrementa CX a 03. Verifica CX, su valor es diferente a 1, entonces entra a la primera
AX = 04 * 02 = 8.
Decrementa CX a 02. Verifica CX, su valor es diferente a 1, entonces entra a la segunda vez:
AX = 08 * 02 = 16
Decrementa CX a 01. Verifica CX, su valor es 1, entonces no vuelve a entrar y AX queda en 16.

a) AX= 0010 (la cuenta da 16, pero como estamos en hexa, queda 10)
b) CX= 0000 (como se decrementa con el loop, el loop termina cuando queda cx en 0)
c) BX= 0000 (BX queda como AX 0010 en hexa,pero luego del AND lgico se guarda la rta de esa comparac

12/4/2013
*El operando reside en la propia instruccin

implicita
*Un registro de 32 bits almacena AABBCDD pasar a litle endian
(NOTA 32 bits binarios son 8 bits en hexa
ejemplo
0000 0000 0000 0000 0000 0000 0000 0000

A
)

0AABBCDD le agrego un cero por ser 32 bits


Agarro de a dos e invierto
0A
AB 0A
BC AB 0A
DD BC AB 0A
* El operando se encuentra en un registro

Modo DIRECTO
*cual es el nombre de las unidades logiacs en las que se puede dividir un disco fsico y cuando se crean?

particiones, al darle formato


*En un entorno multitask como se denomina el are ade RAM ocupada por una nica tarea?

LDT
*como se denomina el bloque de lgica que permite encauzar la info de una de 2^n vas de entrada en una

multiplexor
*Dos instrucciones Assembler de salto

JMP, JE
*la cpu accede a la pila usando instrucciones propias:
POP PUSH

PRACTICO

NOTAAAAAAAAAAAAAA
byte ocupa 1 byte o sea 8 bits
word ocupa 2bytes o sea 16 bits
double word ocupa 4 bytes o sea 32 bits
quad ocupa 8 bytes o sea 64 bits

Un operando definido en word:


*Cant de bits> 16
*Valores decimales extremos no signado > [0;65535]---------->Eso sale de hacer 2^16 -1 porque con 16
*Como se representa el numero -32768 en este formato

-2^15 y habia que pasarlo a binario, 15 bits


-1000 0000 0000 0000
3 Para la linea de codigo
AB55:0103 INT 24
AB55:0105

* Que significa el numero 24?

Funciona como operando, es la posicion del vector de interrupciones, asociado a la IDT.


* Indique el valor de IP para que se ejecute la instruccion

IP=0103????
* La direccion segmentada de la instruccion a la que se retorna luego de la ejecucion del IRET?

AB55:0105

3/2/2011

*como se denomina la estructura de datos que se utiliza en determinadas ocaciones para resguard
Pila/Lifo

*Cual es el nombre de la tcnica para actualizar la memoria desde cache cuando se escribe en MP
escritura inmediata
*Que informacin se almacena en registros de calculo en modo real y en modo protegido?
en modo real datos y en modo protegido operandos

*como se denoomina el registro que actua como puntero de pila y a cauntas posiciones puede dire
SP y puede acceder a 2^16
*donde se encuentra el operando cuando se utiliza direccionamiento implcito?
en el COP o en la misma instruccin
*que es el LDTR y que informacin se guarda en este dispositivo
es el registro de LDT se guarda informacion de una tarea en particular
*Como se representa en unidades de frecuencia 1 millon de ciclos por segundo?
1Mhz

*como se denomina el evento que genera la falta de un segmento. Que modulo del microprocesad
segment fault, lo indica el MMU

*Como se denomina el parmetro que indica la cantidad de bits que se graban en un medio magn
Densidad BPI (BPI significa bits por pulgada, esto es ridiculo)

PRACTICA
SabiendoqueunaCPUgeneraunadireccinde30bitsquepermitenaccederalamemoriaprincipal
*Culessucapacidad(expresadaenunidadesdebytes)sicadapalabradireccionadaesde16bits.
2^30 = 1gb *2 = 2 gb (Dice que la direccin es de 30 bits, as que hay 2^30 direcciones, cada dire

*Siuncontroladorcachelavisualizacomodivididaen64Kgruposcuantosbitssenecesitanparaidentificarcadaunode
2^algo = 64k
algo=16. 16 bits
*si el total de memoria esta distribuida en cuatro palcas Cuntos bits direccionan la placa?

2^2=4 . 2 bits.

Unprocesoqueseejecutaenunsistemaconmemoriavirtualpuramentesegmentadatieneunprimersegmentodecdigod
* Cuando el programa est ejecutando la tercera instruccin el BIT de presencia esta activado?
P=1, porque indica que esta en memoria y s, lo esta
*Quevalordelaentidadselectordeladireccinvirtualpermitedeterminarelaccesoaldescriptorsegmento?
selector=0, pero dudo

*que valor tiene el bit G ?


Desactivado en 0 porque dice segmento puramento segmentado, si el segmetno fuera paginado d

*Silabasealojadaensudescriptoryexpresadaenhexadecimales32427000.Culesladireccinfsicaquecorrespond
32 42 7F FF
Paralalneadecdigopresentadaacontinuacin

AB55:0103MOVAX,[AAAA]

SilainstruccinsiguientealadescriptasealojaenladireccinfsicaAB656Cualeseltamaodelainstruccinycuantos
AB55*10 + 0103 = AB653
AB656 era la proxima asi que ocupa 3 bytes la nuestra.
instruccin=data + cop
3 bytes = 2bytes + cop
(2 bytes porque AAAA ocupa 4 4 4 4=16 bits o sea 2 bytes)
cop = 1 byte

Final 21/12/2011

1. Indique SI/NO si en ambos modos (real y protegido), el Pentium tiene una IDT de idntica cantidad de
2. Indique SI/NO si una interrupcin puede provocarse mediante el software. En caso negativo justifique.
3. Cmo se denomina la arquitectura desarrollada para el procesador Itanium, que consta de quince unida
4. Indique SI/NO si el software de Itanium es compatible con instrucciones de otra arquitectura. En caso n
5. Indique el nombre de la unidad que determina cul ser la siguiente instuccin correspondiente a una d
6. Indique cul es el registro de 32 bits que, adems de su funcin primaria, puede contener una direccin
7. Indique SI/NO si existen hasta 6 registros que se utilizan para determinar el campo selector de una dire
8. Indique SI/NO, si un dato numrico de tipo byte se almacena en modo little endian.
9. Indique cual es la organizacin de memoria que divide el espacio de memoria en bloques de longitud fij
10. Qu rango de numeros signados se puede representar con 16 bits? Exprselo SOLO en decimal
11. Indique el rango de direcciones (expresado en hexadecimal) para acceder a una memoria de 2 KB
12. Con qu siglas se identifica la unidad de velocidad de giro de un disco?
13. Si en una imagen virtual el primer segmento de cdigo est alojado en memoria RAM a partir de la dir
14. Cul de los siguientes registros resultar modificado y con qu valor quedar al ejecutarse una instruc
15. Indique el formato de una direccin segmentada en MODO REAL y presente un ejemplo numrico
16. En base al ejemplo anterior calcule la direccin fsica
17. Cmo se denomina el registro invisible que apunta a la LDT activa?

1.
2.
3.
4.
5.
6.
7.
8.

SI 256 entradas
SI Por ejemplo, instruccin INT #
EPIC (puse IA-64 y me lo pusieron bien)
IA*32 (puse x86-32 y me lo pusieron bien)
Unidad de Prediccin de Saltos
EBX
SI, son los de segmento
NO. (todo es big endian salvo los de coma flotante) (esto igua nose si es tan asi, para mi es numerico li
segn Quiroga:
El Big Endian "se aplica tanto al cdigo como a datos de tipo no numrico."
Contina diciendo que "si el dato es numrico y su tamao es de 2 o 4 u 8 bytes (palabra, doble p

Edit:
Sin embargo, me parece que la respuesta es "NO". Investigando esto en el Stallings, aparece que
Entonces, un dato de un nico byte no es ni big-endian ni little-endian.... porque no cumple el tam
9. Paginacin

10. -2^15; 2^15-1


11. 00 0000 0000 ; 111 1111 1111
por ser 11 bits
000 ; 7FF
12. RPM
13. base AB 00 00 00
limite 1024 son 00400 recordar que la base tiene 32 bits y el limite 20 bits
14 . AX =FF00
15. 23AB:0030
16. 23AB0 + 0030
17. LDTR

7/25/2012

1) Indique si es cierto que en modo real el Pentium tiene acceso a memoria RAM de solo 1 Giga. En caso afi
2) Indique si es verdad que cuando un segmento no se halla presente en la memoria RAM y si lo esta en la

3) Indique a que numero decimal se le asigna la combinacion correspondiente a *0 (cero negativo) en un fo

4) Indique la denominacion de las memorias que constituyen un subsistema cache considerando el tipo de in

5) Indique la cantidad de bits del campo desplazamiento en una direccion virtual si considera que el potenci
6) Indique cual es el registro de 32 bits que permite el acceso LIFO a la pila.

7) Indique si es verdad que existen hasta 6 registros que se utilizan para determinar el campo selector de u

8) Indique con SI o con NO, si es verdad que un dato numerico de tipo DOBLE WORD se almacena en RAM s
9) Indique la organizacion de memoria que divide el espacio de memoria en bloques de tamao fijao.

10) Indique el PRIMER NUMERO POSITIVO que como resultado de una operacion con numeros SIGNADOS g
11) Indique el rango de direcciones (expresado en hexadecimal) para acceder a una memoria de 4K x 8.
12) Que banderas se actualizan luego de la ejecucion de una instruccion de suma?

13) Si se quiere acceder a una instruccion en el segmento de codigo, Cuales de los registros indicados abajo
AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=1516 ES=1516 SS=1516 CS=1516 IP=0100
14) Si se ejecuta una instruccion INC AX. Cual de estos registros se modificara, y con que valo quedara?
AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
15) Referido a instruccion de salto incondicional, Que registro se modifica a causa de su ejecucion?
16) En el Pentium, Que unidad se encarga del calculo de los operandos BCD?
17) Como se denomina el registro invisible que apunta a la LDT en modo protegido?

1. Falso. Direccion segmentada--> Registro de Segmento : Desplazamiento.


2. Falso. Se genera una excepcion que es registrada por el SO, no una interrupcion.
3.Al 128 en formato signo magnitud

1000 0000

4. SRAM instrucciones y datos


5. 32 bits , 2 ^32 =4G
6. ESP
7.V CS DS ES FS GS SS
8. F listtle endian
9. paginas , tamao variable tienen lso segmetnso y tamao fijo tienen las paginas
10. 32768
11. 4k * 1byte =4k = 4096 => 000 FFF por ser 12 bits los que direccionan a 4096
12. Z S V C
13. CS IP
14. AX=0001
15. CX? IP Si es un salto corto solo se modifica el EIP, si es un salto largo modifica el CS y el EIP tam
16. FPU o ALU ni idea
17. LDTR

19/12/2012

http://www.utnianos.com.ar/foro/tema-pedido-final-arquitecturas-19-12-2012

cuales son los dos criterios que sustentan la alta probabilidad de acierto en memoria cache ?
principio de vecinidad espacial y temporal
definicion generica para todos los tipos de error que pueden generar las instrucciones que operan
excepcion, es una falta o error
indique como minimo cuatro unidades que constituyen el procesador pentium
BIU, FPU, unidad de prediccin de saltos condicionales, subsistema cache, unidad de enteros superescalar

tema2: cuales son las unidades del procesador pentium comprometidas en la ejecucion de instrucc
FPU; BIU
registros de 32 bits q se asocian al acceso modo de direccionamiento indexado
EDI y ESI

tema2: registros de 32 bits que se asocial al manejo de la pila


ESP / BSP

modo de direccionamiento en el que el operando se encuentra directamente definido en el campo


modo inmediato ADD BX ,5

tema2:modo de direccionamiento en el que el "dato" forma parte del codigo de instruccin dar eje

Si el operando est incluido en el cdigo de operacin, por ejemplo INC BX (INC es que le suma 1) es imp

memoria ultrarrapida que guarda la dire lineal y la dire fisica de las ultimas 32 paginas de codigo a
TLB

metodo de sustitucion de una linea de cache en una organizacin de correspondencia directa o aso
nota, aca investigu mucho del tema y saque estas conclusiones
totalmente asociativa usa cualquier algoritmo
correspondencia directa o 1 via no usa algoritmo
n vias usa RANDOM o LRU

la rta correcta seria NO USA algoritmo pero ellos seguro que buscaban que contestes LRU como en

tema2:metodo de sustitucion de una linea de cache en que se reemplaza la linea que ha permane
LRU

indique la denominacion generica para las peticiones de interrupcion de los perifericos PIC q perm
IRQ (que pelotudo de mierda que soy, esta me la tomaron a mi en febrero 2014 y la hice mal, igua

indique cuatro datos que deben almacenarse en un disco relacionadso con la administracion del si
(esta tambienme la tomaron !!! Jajaja )

cuales son y donde se almacenan los datos de referencia relacioandos con la administracion del sis

PRACTICO
1) 2143 6587
*CS 2143
*IP 6583
2) *En cuantos frames de pagina se puede dividir una memoria de 6G si la pagina es de 4k ?
en 1572864 paginas
*si un bloque de codigo ocupa 4096 b, cuantas paginas usa?
2 paginas viejaaaaa
3)a)G (bit de granularidad) y el lmite dice el tamao de segmento
b)1
c)2^10=1K=1024 pginas
d)8K * 1K=8M

5/24/2012
http://www.utnianos.com.ar/foro/tema-aporte-final-arquitectura-24-05-2012-resuelto
que informacion binaria se almacena en la memoria de etiquetas de una memoria cache?
Las referencias a las direcciones de la memoria principal.

cuantos bits utiliza el formato del convenio de punto flotante IEEE 754 de simple precision y cuales
1 de signo, 8 de exponente y 23 de mantiza son 32 bits en total
conjuntos de registros de la CPU usados en el modelo de programacion de aplicaciones

Registros de propsito general, registros de segmento (CS, DS, SS), registro puntero de instruccin (EIP), r

registros de 32 bits q se asocian al acceso de la estructura de datos denominada stack o pila


ESP EBP
modo de direcc en el q el operando se encuentra directamente almacenado en un registro
modo de direccionamoento por registro

memoria ultrarrapida q guarda la dire lineal y la dire fisica de las ultimas 32 paginas de codigo acc
TLB

la estructura de datos q contienen las referencias para el acceso a una pagina cuando se usa mem
tabla de paginas?

indique la denominacion generica para las peticiones de interrup de los perifericos al PIC que perm
IRQ

primera etapa del ciclo de instruccin previa a la decodificacion


Busqueda de la instruccin

PRACTICA
si un operando esta definido como WORD
*expresar 1ero y ultimo valor binario sin signo en este formato
word son 2 bytes 16 bits
0000 0000 0000 0000 - 1111 1111 1111 1111
0000-FFFF
*cual es el max numero positivo en binario signado expresado en pot de 2?
2^15-1
*indique el primer valor positivo a partir del cual da overflow
2^15
si me toman esta pelotudez me saco un diez

sabiendo q en un modelo segmentado MMU genera una direccion fisica a partir de una direccion se
*en modo real en q registro de cpu se aloja la entidad base de un segmento de codigo?
en el registro de segmento

*en una direccion virtual asociada a un segmento de codigo, en q registro se almacena el desplaza
Modo Protegido: EIP (32 bits) Modo Real: IP (16 bits) (no estoy seguro tampoco)

*cual es el algoritmo para traducir una direccion segmentada a fisica en modo real? Donde esta la

RSx16 + Desplazamiento (donde RS es la base que esta almacenada en el registro de segmento c


La entidad Base de un segmento presente en modo protegido est en los 32 bits de ms peso del
un proceso q se ejecuta en un sistema con mem virtual con segmetnos paginados
*que informacion brinda el descriptor de segmetno en su campo limite?

brinda el tamao del segmento El campo lmite en modo protegido indica el tamao mximo del segmento.
En los Atributos del descriptor del segmento, esta el Bit de Granularidad. Si G = 0. Entonces los 20bits estan
G=0 - 2^20 = 1M * 1 byte = 1MB
G=1 - 2^20 = 1M * 4Kb = 4GB

*si en solo las tres primeras entradas de una tabla de directorio de paginas se cuenta con informac

05/12/12
1- Un chip RAM de 8k*8 se lee o se escribe un____Byte_______ (unidad de medida).

2- El direccionamiento de cache almacena en forma total o parcial los bits denominados ____etique

3- Al analizar los bloques funcionales de la MMU se observa claramente que la memoria se organiza obligato
4- Al igual que un nmero de coma flotante de precisin extendida, los 64 bits de orden inferior de un regist

Cuando un segmento esta paginado el campo limite expresa la cantidad de paginas que lo constituyen. V
64T (Tera) es igual a 64*K*K*K*K. V
Cuando se esta ejecutando una tarea concreta se activan se activan la GDT y la LDT de la tarea en curso cad
Cuando una memoria de 4G esta dividida en paginas de 4K, solo se necesitan 20 bits para identificar el num
La interrupcin de tipo MNI esta asociado a un nico vector de interrupciones. V

1) Dada la siguiente secuencia de instrucciones


3B45:0105 MOV AH 10
3B45:0106 ADD AH 0C
a- Calcular la direccin fsica de la segunda instruccin
(3B45 * 10) + 0106 = 3B556
b- Que tipo de direccionamiento tiene cada instruccin
Ambas instrucciones tienen direccionamiento inmediato
c- Que valor tendr el registro AX al finalizar la segunda instruccin
AX= AH AL
1 AX= 10 00
2 AX= (10+0C) 00
Entonces AX= 1C00
2) Dados los siguientes campos de una instruccin

/___COP______/____MOD______/____DATA______/
24 bits
a- Si la cantidad de modos de direccionamiento distintos es 16 y se representan en el campo MOD Cuntos
16= 2^4 = > 4bits
b- Si la cantidad de cdigos de operacin distintos es 2^8 y se representan en el campo COP cuantos bits t
8 bits
c- A cuantas posiciones de memoria se puede acceder en modo directo con el campo DATA cuyo tamao sur

Tiene 24 bits en total => 24-4-8= 12 bits del campo data


d- Si COP y MOD fueran un nico campo de 16 bits, a cuantas direcciones se puede acceder con el campo D
24 16 =8 bits
2^8 = > puede acceder a256 direcciones distintas
e- Si esta en modo Directo Indique la ultima direccin de memoria a la que accede con la respuesta del ejer
Como son 8 bits la ltima direccin accedida es FF

12/12/2012
http://www.utnianos.com.ar/foro/tema*pedido*final*arquitecturas*12*12*12
http://www.utnianos.com.ar/foro/tema-pedido-final-arquitecturas-19-12-2012?page=2

*Cuando se devuelve el reconocimeinto a la peticiond e una interrupcin INTR el programa


*Cuando el tipo de excepcin no permite restablecer el programa q la causo es de tipo __
*La pista de un disco se divide lgicamente en ____SECTORES_____ y las pistas de igual
*La zona exclusiva de memoria denominada q se reqiere en sisop multitasking se denomin

*Un segmento es un bloque lgico de tamao fijo q para el procesador estudiado puede se
F, puede ser de 4 k 4m o cualiqer otro peso logico

*El calculo de la direccin efectiva de una instruccin involucra los regisro CS y el campo d
F, CS *10 + DESPLAZ

*Cuando se esta eejcutando una tarea concreta se activa la GDT y la LDT de la tarea en cu
V son los registros de cada una

*Cuando una memoria de 4G esta dividida en paginas de 4 K se necesitan 22 bits para ide

*durante la ejecucin de una transferencia de datos se puede producir un desbordamiento


F , overflow se produce en las instrucc aritmenticas, y no en las transf de datos.
2
1)0304
2)0753
3)0304 (lo transfiere desde la pila)
3
esta resuelto mas arriba es iguallllllllllllllllll

3/23/2011

1* El conjunto de 20 bits con los cuales se informa el tamao en bytes de un segmento cuando el bit de gra
2*Se denomina ciclo de reloj a....? la frecuencia de funcionamiento del pentium
3*para una frecuencia de 1ghz es de _______
1 Mhz = 1 000 000 HZ
1 Ghz= 1 000 000 000 Hz
1hz
es 1ciclo/s
1000000000 hz son x
x= 1 000 000 000 ciclo/s

4*cuando 1 dispositivo de E/S requiere la atencin del CPU, se enva una seal de solicitud que es atendida
5*que genera una interrupcin clasificada como ______externa_______ (o mascarable tmb)
6*que se identifica con el nombre de seal ______INTR_____
7* la instruccin de salto incondicional produce modificacin del valor del registro IP durante su ejecucin? V
8*actualiza las banderas del registro? F
9*en memoria virtual, la unidad de segmentacin de la MMU traduce a direccin:lineal
10* la direccin virtual generada x la CPU en tanto la unidad de paginacin traduce aqueello a direccin: fs

notas

"Acepta solicitudes de interrupcion de los dispositivos conectados a l, determina qu interrupci


"en interrupciones externas, nombra NMI y INTR y dice que INTR es mascarable. as que es masc

Un salto es pasar de una instruccion a otra en otra direccin, por lo tanto IP pasa a apuntar a la n
Si es un salto o direccionamiento inmediato o implcito no accede a memoria. Y los saltos no alte

"Como veremos a continuacin , cuando el 8259A recibe una seal IRQ, activa la seal INTR qu
El perifrico le enva IRQ al controlador y el controlador INTR al procesador.

un ciclo de reloj es la frecuencia del procesador. El ciclo de bus es el tiempo que la cpu utiliza par

2/29/2012

http://www.utnianos.com.ar/foro/tema-pedido-final-arquitecturas-29-02-12

1) Al conjunto de bits que se acceden por vez se lo denomina PALABRA DE MEMORIA


2) La caracteristicas de los buses con que medimos la cantidad de bits que se transmiten por unidad de tiem
3) Una aplicacion que precise enviar y recibir datos de un dispositivo de E/S utilizando DMA realizara operac
4)

V/F - justificar por Falso


1) la segmentacion paginada obliga a que ambas unidades de la MMU esten activas para el mapeo de direcc
2) el rango del exponente en formato de doble precision del IEEE es (-1023, +1024) - V
3) Una instruccion de llamada o retorno se clasifica como instruccion de salto o bifurcacion - V
4) una instruccion con formato 'mnemonico reg2, reg1' es una instruccion que no requiere acceso a memori
5) una cuadruple palabra es un tipo de dato de 64 bits - V
La practica no restaba
el 1 ejercicio te daban dos instrucciones Assembler y tenias que decir
a) direccion fisica de la 1 instruccion
b) modo de direccionamiento de las instrucciones
c) decir cual es el valor binario del acumulador al terminar de ejecutarse la segunda instruccion

el 2 ejercicio, te daban la representacion de los campos de una direccion fisica vista desde el controlador d
ETIQUETA - LINEA - 5 BITS
Y la cache tenia 64 lineas
Preguntaban
a) Cantidad de bits para identificar la linea
b) tamao de la MP
c) tipo de correspondencia
d) Tamao de la linea de cache
e) Tamao del bloque en MP

2/15/2012
http://www.utnianos.com.ar/foro/tema-arquitectura-de-computadores-final-15-02-12
http://www.utnianos.com.ar/foro/tema-pedido-final-arquitecturas-de-computadoras-15-02-2012

1 * En ambos modos el Pentium puede direccionar hasta 4Gb de memoria. Justificar


2 * El itanium tiene la caracterisitca de ser compatible con IA*32 y tener como tecnologa IA*64.
3 * Indique un registro de 32 bitsque ademas de su funcion principal se usa como contador
4 * Nombrar cuales y cuantos niveles de cache posee el Itanium
5 * Un dato tipo word se almacena en modo litle endian. En caso afirmativo justificar, en caso negativo indic
6 * indicar el rango SIGNADO que se puede obtener con 16 bits.
7 * Organizacion de memoria que se caracteriza por dividirla en tamaos variables
8 * Dado un segmento que tiene como direccion inicial 10 00 00 00 y posee 256 bytes indicar la base y limi
9 * Indique como es el esquema de un segmento en modo real y dar un ejemplo
10 * en base al ejemplo anterior obtener la direccion fisica
11 * Registro no visible que apunta a la base del IDT
12 * INTO genera una interrupcion por software. Justificar
13 * Indicar el rango de direcciones que se pueden obtener con una memoria de 4K*8
14 * Indique el nombre de la unidad que determina cul ser la siguiente instuccin correspondiente a una d
15 * Indique SI/NO si existen hasta 6 registros que se utilizan para determinar el campo selector de una dir
caso negativo justifique. En caso afirmativo indique cuales.
16 * Con qu siglas se identifica la unidad de velocidad de giro de un disco?
17 * Cul de los siguientes registros resultar modificado y con qu valor quedar al ejecutarse una instrucc
AX=BX=CX=DX=BP=SI=DI=0000, SP=FFEE

1. Falso. En modo Real puede direccionar 1Mb puesto que solo se le habilitan 20 lineas del bus de datos.
2. V
3. ECX
4.L1 L2 L3
5. Verdadero numerico es little endian , no numerico es big endian y ademas "si el dato es numrico y su ta
6.-2^15 ; 2^15-1
7.segmentos
8. Base: 10 00 00 00. Limite: 00100
9. XXXX:YYYY (Selector:Desplazamiento). Ej: AB55:0103
10. AB55*10 + 0103 = AB550+0103 = AB653
11. IDTR
12. Verdadero. INTO es una interrupcion interna que se encarga de verificar la bandera OF.
13. 4k x 1byte = 4k 000 FFF
14. unidad de prediccion de saltos
15. CS DS ES FS GS SS
16. RPM
17. AX 00FF

2/22/2012
tema 1

1 - Indique SI/NO si en ambos modos (real y protegido), el Pentium tiene una IDT de idntica cantidad de e
2 - El itanium tiene la caracterstica de ser compatible con la arquitectura
3 - Indique cul es el registro de 32 bits que, adems de su funcin primaria, puede contener una direccin
4 Cmo se denomina la arquitectura desarrollada para el procesador Itanium, que consta de quince unidad
5 Responder Si/No un dato tipo byte se almacena en modo Little Endian.
6 - indicar el rango SIGNADO que se puede obtener con 16 bits.
7 - Indique cual es la organizacin de memoria que divide el espacio de memoria en bloques de longitud fija
8 - Dado un segmento que tiene como direccin inicial AB 00 00 00 y posee 1024 bytes indicar la base y lim
9 - Indique como es el esquema de un segmento en modo real y dar un ejemplo
10 - en base al ejemplo anterior obtener la direccin fsica
11 - Registro no visible que apunta a la base del IDT
12 - Indique SI/NO si una interrupcin puede provocarse mediante el software. En caso negativo justifique.
13 - Indicar el rango de direcciones que se pueden obtener con una memoria de 2K*8
14 - Indique el nombre de la unidad que determina cul ser la siguiente instruccin correspondiente a una
15 - Indique SI/NO si existen hasta 6 registros que se utilizan para determinar el campo selector de una dire
16 - Con qu siglas se identifica la unidad de velocidad de giro de un disco?
17 - Cul de los siguientes registros resultar modificado y con qu valor quedar al ejecutarse una instrucc
AX=BX=CX=DX=BP=SI=DI=0000, SP=FFEE

1- Si 256
2- IA-32
3- EBX
4- EPIC
5- NO
6- [-32767;32768]
7- Paginacion
8- BASE= AB 00 00 00 LIMITE= 004 00
9- XXXX:YYYY (DIRECCIN:DESPLAZAMIENTO) Ej: 0123:04F3
10- 01723
11- IDTR
12- Si, INT# e INTO (Verifica el flag OF)
13- 000 - 7FF
14- Unidad de Prediccin de Saltos
15- Si, SS - CS - DS - ES - FS - GS
16- RPM = Revoluciones por minuto
17- AX= FF00

TEMA2
http://www.utnianos.com.ar/foro/tema-aporte-arquitectura-de-computadoras-tema-2-final-22-02-20

1) Si el tamao del espacio virtual es de 64 TB, cuntos bits constituyen la direccin virtual?
2) Tipo de excepcin que no permite reestablecer el programa o tarea que la caus.
3) Indique si es cierto que en el repertorio de instrucciones EPIC de Itanium cada unidad de ejecucin const
4) En qu 2 criterios se apoya el xito de una bsqueda a una memoria cach.
5) Indique si en el subsistema cach existe un componente encargado de gobernar las transferencias en cac
6) Indique cul es el registro de 32 bits que, adems de su funcin primaria como registro de clculo, puede
7) Indique si es verdad que existen 2 registros que se utilizan para determinar el campo Desplazamiento de
8) Indique si es verdad que si un dato es alfanumrico se almacena en Little Endian. Si es afirmativo, indiqu
9) Indique CON SIGLAS los 3 campos en los que sedivide el SELECTOR de una direccin virtual.
10) Qu rango de nmeros NO SIGNADOS se pueden representar con 16 bits, exprselo SOLO en decimal.
11) Indique el rango de direcciones (expresado en DECIMAL) para acceder a una memoria de 4K x 8.
12) En un sistema de cabeza movil, cmo se denomina al tiempo necesario para desplazar el brazo del disc
13) Si en memoria se observa la siguiente cadena hexadecimal correspondiente a un vector de interrupcin:
14) Si se ejecuta una instruccin INC AL, cul de estos registros se modificar y con qu valor quedar?

AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000


15) Realice la siguiente suma hexadecimal: A4E0 + BB3A.
16) El registro invicible GDRT tiene un tamao de 46 nits. A qu tabla apunta y qu campos lo constituyen?
17) Cmo se detecta que una pgina est ausente en la RAM y que se debe solicitar subsqueda en memo

1. 64* 2^40 (se sabe que a la cuarenta es TB, entonces todo ese resultado se le aplica logaritmo y se lo di
2. aborto
3.V La arquitectura IA-64 soporta un nuevo modelo de Repertorio de Instrucciones basado en la tecnologa
Las tres instrucciones EPIC del paquete utilizan 123 bits (41 para cada una)...
4. Vencidad Espacial y Temporal
5- Estimo que es la CPU, o el controlador de Cache pero no hay nada de esto claro en el libro.
6- EDX.
7- Falso. El campo dezplazamiento sumado a la base del segmento nos indica una direccion a acceder.
8- Falso Big Endian .un codigo alfanumerico es una cadena y en las cadenas se utiliza big endian
9- Indice, TI, RPL (en angulo)
10- [0,65535]
11- La memoria es de 4kb por ende representa 2^12=4096 = [0;4095]
12- Tiempo de Busqueda
13- AABBCCDD ----->
DDCCBBAA
14- AX=0001
15- 1601A
16- Correcccion en Angulo el registro GDTR apunta a la tabla GDT, pero su tamao es de 48 bits y los camp
17- Con el Bit de Presencia (P), Cuando se encuentra en 0 se produce una excepcion, que activa una rutina

16-Dec-09

*Que bandera se utiliza para habilitar las interrupciones internas?


Ninguna son interrupciones internas
*que tipo de error comprueba la instruccin intO?
Error por oeverflow
*estoy en lo cierto si digo que LRU es el algoritmo de sustitucin mediante el cual se elimi
LRU elimina la lina menos recientemente accedida/Random elimina arbitrariamente
*cual es el efecto de la ejecucin de la instruccin ROR AX ,1?
Rotacin a derecha de un 1 bit
*es significativa la informacin del campo base de un descriptor de segmento si su bit de
No porque si P=0 indica que no esta en memoria,si esta ausente se desconoce la base.
*estoy en lo cierto si digo que el bit de granuladidad indica que la pagina esta segmentada
No, indica que el segmento esta paginado.
*cuales son los registros de uso del programador de aplicaciones que contienen la base de
Los registros de segmento SS CS DS ES FS GS
*existe alguna forma de identificar un cdigo de operacin no valido?
Si, se trata de una excepcin produce una excepcin.

03 03 2010
http://www.utnianos.com.ar/foro/tema*arquitectura*de*computadoras*aporte*final*03*03*2010

Tema1
*se denomina algoritmo de sustitucin en una memoria cache a una poltica de escritura principal
F, algoritmo de sustitucion en una MC son los algoritmos para actualizar la cache con datos
*La trampa es una excepcin en la que no se sabe la localicacion excata que la genero
F, ese el aborto
*se debe considerar que la paginacin por demanda admite la segmentacin de una pagina razn
F, La MMU cuenta con la unidad de Paginacin y la de Segmentacin, pero cuando est habilitada

*Nivel de privilegio de la E/S (IOPL) es un atributo del descriptor de segmento


F, Los atributos que tiene el Descriptor de Segmento son: Bit de Presencia, Nivel de Privilegio, Clas

*el direccionamiento directo de registro no involucra acceso a memoria


V , no involucra acceso a memoria.

*El bit de granularidad indica si el campo limite debe ser intepretado en unidades de byte o de pag
V
Si G = 0 es en bytes, Si G = 1 es en pginas.

*Robo de ciclo significa que el procesador roba un ciclo de acceso a memoria para la transferencia

F, La DMA es quin le roba el ciclo.


"debe forzar al procesador a que suspenda temporamente su funcionameinto. Esta ltima tcnica

*la interfaz de arbitraje de un bus controla los ciclos de bus que permiten el acceso a memoria y a
V
"Es responable de asignar tiempos en el bus" en Stallings. Pgina 73.
En Angulo aparece como "controlador" en vez de "arbitraje" en la pgina 301..

*La fpu puede operar con tipo de datos BCD


V
El Coprocesador Matemtico (FPU) almacena la informacin en un formato nico, coma flotante y p

TEMA2
*La fpu opera con tipo de dato entero
V

*en un modelo no segmentado la decodificacin del cdigo de operacin es previa al calculo de la

Falso. Todos los modelos son segmentados, pueden ser paginados o no.
Si no dijese "modelo no segmentado" la decodificacin del cdigo de operacin es previa al clculo

*en prediccin de saltos una tcnica se denomina tabla histrica de datos


V "Tabla de historia de saltos".

*una memoria cache es mas veloz que una memoria dram debido a su tecnologa
V

*en una estructura de bus la lnea de control reloj se utiliza para sincronizar las operaciones
V
Verdadero.
"Reloj (Clock): se utiliza para sincronizar las operaciones". Pgina 69 de Stallings.
En Angulo no hay nada de esto. Menos mal que hay que leer de Angulo nada ms.

*Se denomina algoritmo de sustitucin en una memoria cache a una poltica de escritura en memo
F

*la trampa es una excepcin en al que no se sabe la localizacion exacta que la genero
F, es un aborto

*se debe considerar que la paginacin por demanda admite la segmentacin de una pagina razn
F

*nivel de privilegio de la E/S (IOPL) es una atributo del descriptor de segmento


F

PRACTICO
*El primero es papona y el de assembler hay que restar
*SUB AX FFFF
0-FFFF
0 + A2(FFFF)
Al hacer el complemento A2 queda
0000 0000 0000 0001
0000000000000001(2)=0001(16)
*el practico de cache esta bueno es facil, si llego lo resuelvo explicandolo

2/24/2010
TEMA 1

1_ se completa en primer lugar la lnea de cache que contiene el byte requerido por el pro
El dato pedido va en ultimo lugar
Formas de actualizar la cache. LRU FIFO RANDOM

Hay dos opciones para actualizar las lneas:

oEl dato pedido va en primer lugar: se conoces con el nombre de lectura o carg
oEl dato pedido va en ltimo lugar: el procesado debe esperar que se termine d

2_metodo adoptado para actualizar cache asociativas


Algoritmo de sustitucin
3_conjunto de registros de la cpu utilizados para funciones como las de administracin de
Modelo para programador de sistemas
4_registros de 32 bits que actua como indicadores o seales de control de determinadas f
Registro EFLAGS
5_caso en que el operando se encuentra directamente incorporado en la instruccin
Direccin inmediata
6_ dispositivo de memorai ultrarrpida que guarda la direccin lineal y la direccin fsica d
TLB
7_la estructura de datos que contienen las referencias para acceso a memoria cuadno se u
Tabla de descriptores de segmento
8_dispositivo que recibe la o las peticiones de interrupcin de los perifricos conectados y
Controlador de interrupciones
9_proceso para determinar a cual de los controladores de bus que solicitan acceso se lo pe
Arbitraje de bus

TEMA 2
*Estructura de datos usada en ocaciones para guardar el contenido de los registros de cpu
Pila o stack
*Mtodo para actualizar la memoria desde cache por cada vez q se escribe en ella
Escritura inmediata

*Conjunto de registros de cpu usados para contener la entidad base en una direccin segm
Registros de segmento
*Registro de 32 bits que actua como puntero de instruccin
EIP

*Caso en que la referencia a memoria del operando se encuentra directamente en la instr


Direccionamiento directo

*Cual es la ultima direccin accesible en un segmento virtual determinada por el campo li

FFFFF
*Seal de solicitud de pedido de atencin por parte de un dispositivo externo a la cpu
IRQ
*Que es una doble falta
Es una excepcin o aborto que es una clase de excepcion

12/1/2010

*El BP mantiene el criterio lifo de la pila , lo usan las instrucciones push y pop
F ,ES EL SP

Es aconsejable copiar el SP al BP y luego para direccionar usar el BP ms un desplazamiento. De sta maner


"Es aconsejable utilizar el BP(puntero base) para acceder a datos en la pila. Por ejemplo si se quiere armar u

Es decir, el BP se usa para acceder a la pila, pero no con PUSH y POP, sino que si por ejemplo necesitas usar
MOV BP,SP;
ADD AX,[BP+1];
De esa forma pudiste sumarle a AX un dato que estaba en la pila (en este caso el anteltimo que estaba en

*Un segment fault es una excepcin detectada por la unidad de segmentacin de la MMU
V
*El bit de granularidad indica si en el segmento la informacin fue actualziada o no
F, ese es el A.. el bit de G indica si el segmento esta paginado
*Los registros de segmetno son registros de uso del programador de aplicaciones
V CS DS SS ES FS GS
*En una operacin de punto flotante en una suma no es necesario asegurar q ambos oper
F Falta aclarar, que, para sumar dos operandos, se debe tener en cuenta el alineamiento del punto, esto es,
*En una entrada salida el dma se reqiere en modulo en modulo adicional en el bus del sist
V"El DMA requiere un mdulo adicional en el bus del sistema"
*Robo de ciclo significa que el controlador de memoria roba un ciclo de maquina al proces
F, el dma roba un ciclo

8) se denomina latencia a
1 tiempo q tarad el sector en pasar debajo de la cabeza
2 tiempo q tarad en poss en un cilindro el brazo del disco
3 tiempo q tarda en poss en una la cabeza en una pista
4 ninguna
LA PRIMERA

9En modo real


1 una tabla de
2 una tabla de
3 una tabla de
4 nignuna
NINGUNA

o de 16 bits la base del segmento se obtiene de


vectores de interrupcin
verdad
descriptores de segmento alojada en la TLB

17-Feb-10

*Al recuperar el entorno de cpu se ha ejecutado la siguiente secuencia de instrucciones PO


Push reg3
Push reg2
Push reg1
*a q denominamos modelo de maqina para el programador de aplicaciones como esta con
Registros de propsito general (EAX; ECX etc)
Registro de puntero de instruccin
Registro de sealadores eflags
Registro de segmetno
Registro de FPU

*tipo de memorias de altas restaciones caracterizadas porq entregan informa

D-RAM con sincronismo doble


*denominacion dada al hueco de represnetacion entre dos valores reales representables en punto flotante y
Underflow
*conjunto de tcnicas que permiten utilizar un conjunto de discos de menor capacidad en lugar de un nico
RAID
*denominaciones dadas los terminales que dispone el procesador para la recepcin de peticiones de interrup
INTR (Interrupcion mascarable) y NMI (interrupcin no mascarable)
*es necesario resguardar el valor actual del de instruccin al ejecutar una instruccin de salto condicional po
No, porque no es necesario regresar al lugar donde se produjo el salto, eso slo se hace en las llamadas a s
*mecanismo que permite acelerar la ejecucin del programa mediante la estrategia de dividir el ciclo de inst
dividir el cause en etapas es Segmentacin

*tipo de correspondencia utilizada en un sistema de memoria cache donde cada bloque de memoria principa
Asociativa de n vas
*tipo de excepcin que surge cuando el procesador detecta anomalas como el intento de transferencia de la
Excepcin por proteccion

Final 01/12/10
*El BP mantiene el criterio LIFO de la pila lo usan las instrucciones push y pop.
F. es el SP
*Un segment fault es una excepcin detectada por la unidad de segmentacin de la MMU
V

*El bit de granularidad indica si en el segmento la informacin fue actualizada


F indica si el segmento esta paginado. El bit que indica si la info fue actualizada es el A
*Los registros de segmento son registros de uso del programador de aplicaciones
V

*En una operacin de punto flotante en una suma no es necesario asegurar que ambos op
F falta aclarar que para sumar dos operandos se debe tener en cuenta el alineamiento del
*En una E/S el dma se reqiere en modulo adicional en el bus del sistema
V

*robo de ciclo significa que el controlador de memoria roba un ciclo de maqina al procesad

"Esta ltima tcnica es la ms comn y se denomina robo de ciclo, puesto que, en efecto, el mdulo DMA ro
DMA por robo de ciclo: se basa en usar uno o ms ciclos de CPU por cada instruccin que se ejecuta

*Se denomina tiempo o periodo de latencia a:


*Tiempo que tarda el sector en pasar debajo de la cabeza lecto grabadora
*Tiempo que tarda en posicionarse en un cilindro el brazo del disco
*Tiempo que tarda en posicionarse en una cabeza lectograbadora en una pista
*Ninguna
La correcta es la 1era.
En modo real o modo de 16 bits la base del segmento se obtiene de:
Una tabla de vectores de interrupcin
Una tabla de verdad
Una tabla de descriptores de segmento alojada en la TLB
Ninguna

La respuesta es ninguna porque "Para conseguir el valor de la base se multiplica por 16 el valor del re

2011 03 16 (unico final para practicar tie

NOTAS
*Tiempo de bsqueda (seek time) es el tiempo que tarda en buscar la pista, en posicionarse en la
*Retardo rotacional : tiempo que tarda el sector en alcanzar la cabeza

Tiempo de bsqueda:
Periodo que tarda el brazo en mover las cabezas lectrograbadoras entre las pistas en milisegundos (1ms = 0.00

Se computan considerando el tiempo de posicionamiento entre pistas adyacentes, el tiempo de posicionamiento

Tiempo de cambio de cabezas o de switch:


El brazo mueve todas las cabezas lectograbadoras sobre los platos de una forma sincrnica, solo una de las ca
Mide el periodo medio que le lleva a la unidad de disco cambiar entre dos de las cabezas cuando esta leyendo o

Latencia Rotacional:
La cabeza lectograbadora se posiciona sobre la pista adecuada, debe esperar que la unidad de disco fire el pla
El disco necesita en promedio, girar solo media vuelta antes de que el prximo sector para leer o escribir este d
Tiempo de acceso a los datos:
Es una medida de lo que se tar4da en posicionar una cabeza lecto/grabadora sobre una pista particular y encon
El tiempo de acceso es una combinacin del tiempo de bsqueda, el tiempo de cambio de cabezas y la latencia
El buffer cache de una unidad de disco se usa tanto en las transferencias de datos del disco al host (lectura) co
La lectura de estos datos adicionales no pedidos se llama pre bsqueda o cache look ahead.

Me quedo con la definicin de angulo y mis notas:

*Latencia rotacional = 1/ RPS rev por seg RPS es tiempo de giro. (ojo que siempre piden la latencia rotaciona
*Tiempo de lectura de un sector =
(BytesPorSector x 1000)/RPS x (BytesPorSector x sectores)
*TB= k x pistasAtravesadas + t.inicial
(CASI SIEMPRE ES DATO)
*Tiempo total de transferencia de un sector ledo
O Tiempo de acceso =
Latencia rotacional en segundos+tiempo d electura de un sector o t.transf+t.b

NOTA: si piden en vez de tiempo de lectura de un sector, tiempo de lectura de una pista entonces en BytesPorS

TEMA1
1) en un disco de cabeza mvil el tiempo de bsqueda medio:
a.Es el tiempo necesario para desplazar el brazo del disco hacia la pista r
b.Es el tiempo necesario para leer 512 bytes
c.Es parte del calculo del tiempo de acceso
d.Ninguna
A y C correctas

2) como se calcula el numero de bytes de disco de pistas de igual capacidad?


cualqi.
3) como se calcula la latencia rotacional?
La latencia rotacional es el tiempo que tarda en dar 1 vuelta bsicamente. Si pide la media lo dividis por dos. La
Donde 1000 es para pasarlo a ms dado que el 60 lo deja en segundos al RPM.
4) como se calcula el tiempo de acceso?
TIEMPO DE BUSQUEDA (si existe)+ RETARDO ROTACIONAL+t.transf o t de lectura de
aaaaa
5) como se denomina la seal que habilita la seleccin de una fila en una memoria dinmica?
Existen 2 seales las cuales habilitan la seleccin de una fila o columna, las cuales son: RAS y CAS, respectiva

6) cuantos mb hay en una matriz de memoria organizada como 1mb *8


1 mb porque es 8 bits que es 1byte.

7) si una cache utiliza un criterio de escritura inmediata cuando se debe actualizar un bloq
Cada vez que la cpu modifica la cache.

8) en un descriptor de segmento el bit de granularidad indica si el segmento esta dividido


V
9)cual es la relacin entre frecuencia y tiempo?
Frecuencia es el numero de ciclos completos que da 1 seal en 1 segundo.
Mientras que el tiempo que tarda la seal en completar un ciclo se denomina periodo
1 hz = 1/s , la frecuencia se mide en hz y el tiempo en s

PRACTICO
Considere un disco de:
Tiempo de bsqueda 6ms, velocidad de rotacin 15000rpm
Sectores por pista 500 y cantidad de bytes por sector es de 512.
a. Cual es el tiempo de giro expresado en seg?
b. Cual es el tiempo considerado latencia rotacional expresado en 10^*3 seg?
c. Cual es el tiempo de lectura de un sector expresado en 10^*3seg ?
d. Cual es el tiempo total de la transferencia de un sector leida?
a)
15 000 / 60 = 250 revoluciones por segundo
b)
latencia rotacional= 60*1000/15000=4ms
lo pide en 10^*3 seg o sea 0,001 seg aca lo expres en ms porqu multiplic por mil
60/15000=0.004 seg o 4*10^*3
c) (512 * 1000) / 500*512 *RPS
d) sumar c+LS+6ms que es tb.

2008 05 28
1.Estructuradedatoutilizada,enocasiones,pararesguardarelcontenidodelosregistrosdeCPU
PilaoStack
2.Mtodoqueactualizalamemoriadesdecacheporcadavezqueseescribeenella.
Writethroughoescriturainmediata
3.ConjuntoderegistrosdelaCPUutilizadosparacontenerlaentidadbaseenunadireccinsegmentada
Registrosdesegmento
4.Registrode32bitsqueactacomopunterodeinstruccin
RegistroEIP
5.Casoenquelareferenciaamemoriadeloperandoseencuentradirectamenteenlainstruccin
MODODIRECTO

6.memoriadepocacapacidadqueespecficamenteguardaladireccinlinealyladireccinfsicadelasltima
TLB

7.Culeslaltimadireccinaccesibleenunsegmentovirtualdeterminadaporelcampolmitedesudescript
FFFFF
8.SealdesolicituddepedidodeatencinporpartedeundispositivoexternoalaCPU
IRQ
9.Queesunadoblefalta?

Puedenponerexcepcinoaborto,queesunaclasedeexcepcin

SabiendoqueunaCPUgeneraunadireccinde33bitsquepermitenaccederalamemoriaprincipal
Culeseltamaopotencialdelamemoriaprincipal(8Giga)
SialamemoriaDRAMselehabilitan4GigaCuntosbitssonsignificativosparadireccionarla(32bits)

Sieltotaldelos4Gigaestndistribuidosendosplacasde8chipscadaunacomoestaarmadalamatrizdemX8

Unprocesoqueseejecutaenunsistemaconmemoriavirtualpuramentesegmentadatieneunprimersegmentodecdigod
CuantovaleelcampoelcampoPdepresenciacuandoelprogramaestejecutandolatercerainstruccin?Bitdeprese
Quevalordelaentidadselectordeladireccinvirtualpermiteaccederalsegmento?ActuacmoindicedelaLDT
QuevalortieneelbitdeGranularidad?Desactivadoen0
Silabasealojadaensudescriptoryexpresadaenhexadecimales32427000.Culesladireccinfisicaquecor

Paralalneadecdigopresentadaacontinuacin

AB55:0103movAH,[0333]

SilasiguienteinstruccinaladescriptasealojaenladireccinfisicaAB656Cualeseltamaodelainstrucciny

25/07/2012

este ya

1IndiquesiesciertoqueenmodorealelPentiumtieneaccesoamemoriaRAMdesolo1Giga.Encasoafirmativojustifiqueeindique

NO. SE ACCEDE SOLO A 1 MEGA y la direccion segmentada esta constituida por la base del segmento y el desplazamiento o

2IndiquesiesverdadqueuncuandounsegmentonosehayapresenteenmemoriaRAMysiloestaenmemoriavirtual,seprovocauna
SI / la instruccin es de tipo excepcion clasificada como falta / segment fault pag 267. cap 14
3Indiqueaquenumerodecimalseasignaelnumero0(ceronegativo)enunformatosdecomafijade8bits.
-128
4indiqueladenominacindelasmemoriasqueconstituyenunsubsistemacacheconsiderandoeltipodeinformacinquealmacenan.

Memoria de etiquetas o labels y memoria de datos.

5Indiquelacantidaddebitsdelcampodesplazamientoenunadireccionvirtualsiconsideraqueelpotencialespaciodedireccionesesd
32 bits
6Indiqueculeselregistrode32bitsquepermiteelaccesoLIFOalapila.
ESP pag 159 cap 7

7Indiquesiesverdadqueexistenhasta6registrosqueseutilizanparadeterminarelcamposelectordeunadireccinvirtual.Siesnegat
SI / LOS REGISTROS DE SEGMENTOS o pueden contestar
SI / CS,DS,ES,SS,FS,GS pag 165 cap 7

8Indiqueconsioconno,siesverdadqueundatonumricodetipoDOBLEWORDsealmacenaenRAMsegnlatecnicaBIGendian
NO, los datos numericos se almacen en little endian.
9Indiquelaorganizacindememoriaquedivideelespaciodememoriaenbloquesdetamaniofijo.
PAGINACION pag 177 cap 8

10.IndiqueelPRIMERNUMEROPOSITIVOquecomoresultadodeunaoperacindenmerossignadosgenerariaoverflowenunform
32768
11Indiqueelrangodedirecciones(expresadoenhexadecimal)paraaccederaunamemoriade
4KX8.
000 FFF
Quebanderasseactualizanluegodelaejecucindeunainstruccindesuma?
S, Z, V, C, A

13SisequiereaccederaunainstruccinenelsegmentodecodigoCulesdelosregistrosindicadosabajoseutilizanparaelcalculode
AX=0000BX=0000CX=0000DX=0000SP=FFEEBP=0000SI=0000DI=0000
DS=1516ES=1516SS=1516CS=1516IP=0100
CS e IP
14SiseejecutaunainstruccinINCAXCuldestosregistrosdemodificaryconquvalorquedar?
AX=0000BX=0000CX=0000DX=0000SP=FFEEBP=0000SI=0000DI=0000
Se modifica AX con 0001
15Referidoainstruccindesaltoincondicionalqueregistrosemodificaacausadesuejecucin?.
IP o EIP
16EnelPentiumQueunidadseencargadelclculodeoperandosBCD?
FPU
17CmosedenominaelregistroinvisiblequeapuntaalaLDTenmodoprotegido?
LDTR

Explicacion de ejercicios de memoria cache

Nota se denomina a Word a la palabra tambin se le dice byte.


*Totalmente asociativa
La direccin viene dada por etiqueta y palabra
El tamao de la memoria cache es palabra*lnea
El tamao de la memoria principal es etiqueta*palabra el tamao de la direccin seria.
*Asociativa de 1 via o correspondencia directa
La direccin viene dada por etiqueta lnea palabra
El tamao de la ache es lnea*palabra * 1via
El tamao de la MP es e*L*w
*Asociativa de n vias
La direccin viene dada por etiqueta lnea palabra
El tamao de la cache es lnea*palabra * n vias
El tamao de la MP es e*L*w

EJEMPLOS
Ejemplo1)

Sabiendo que la CPU genera una direccin de 30 bits que permite acceder a la memoria principal y a la cach
Considerando que el campo de bloque es B=5 bits y que la cache posee dos vias de 1024 lineas. Se pide:
a) Cul es el tamao de la memoria principal?
b) Cul es el tamao de bloque de cada linea de la cache?
c) Cul es el tamao de la memoria cache?
d) Cules son los valores del campo de etiqueta E= bits y del campo linea L= bits?

a)2^30 bytes.
b) 2^5 bytes
c) 2^5 * 2^10 * 2 bytes
d)2^5 bytes es el Word
2^10 bytes es la linea
Y lo que resta hasta llegar a 30 (15) es etiqueta o sea 2^15
NOTA

el bloque no tiene nada que ver con la mem. principal. Bloque es parte de la estructura de la memoria cache
(Tenes la otra arquitectura de memoria, que solo tiene ETIQUETA y LINEA, que se llama totalmente asociativ

ejemplo2)

Si se presenta una MP de 1 mega con cache de 32 k organizada con 16 posiciones (bytes) por linea con corr
. Determine tamao de:
* Etiqueta
* Linea
* Word

1MB = 2^20
MC = 2^15 = 32*1024
Como tamao cache= lnea*words
Lnea*16=32768
Lnea =2kb=2^11
Y hay que llegar a 20 bits en la direccin asi que
2^11 de lnea
2^4 de Word
2^5 de etiqueta
Adems 1MB/32K =32 que es 2^5 etiqueta.
ETIQUETA LINEA POSICION
5 bits 11 bits 4bits

ejemplo3)

ejemplo4)

Ejercicios de conversin etc


n es bit
N es byte
2^n = N
1byte=8bits
Word=2bytes = 16bits
Doubl Word =4 bytes=32bits

Double*words are 32*bit (four byte) unsigned integers with a range of 0 to 4,294,967,2

Ejercicio 1)
Si un operando esta definido como tipo DOUBLE WORD
a)Exprese su tamao en bits
b)Cul es el rango de nmeros binarios enteros sin signos que permite representar?
c)Cul es el rango de nmeros binarios enteros con signos que permite representar?

a)32bits
b)
[0, 2^32 *1]
Vamos a ver este ejemplo con un numero mas chico para poder verificarlo:
si tengo por ejemplo 4 bits
[0000 1111] es mi rango, yo puedo hacer cualquier numero entre el [0000 y el 1111] y
Entonces hago 10000 que es un numero ms que el 1111 .. es el SIGUIENTE a 1111.(Qu
paso a
1111 (que es el MAXIMO anterior )
y me da quince(2^4=16*1=15) y efectivamente se verifica porque
1x 2^0
1x 2^1
1x 2^2
+
1x 2^3
*********
15

c) [*2^(31); +2^(31) 1]
otro)
con 16 bits se pueden representar:
[*2^15 ; 2^15*1]

Otro)Representar el nmero +14,6 (10) en representacin de punto flotante de precisin simple.


+14,6 (10) , lo pasas a binario...
14/2 = 7 /2 = 1/2 =
resto: 0 = 1 = 1
te queda 110(2)
ahora falta la parte fracional
0,6
0,2
0,4
0,8
0,6
0,2

x
x
x
x
x
x

2
2
2
2
2
2

=
=
=
=
=
=

1,2
0,4
0,8
1,6
1,2
0,4

como nos damos cuenta es periodico.

entonces te quedara
1,10100110 x 10^2 ( corri dos lugares la coma)
como es simple precision y calculo que debe ser el modelo standar 127.
es 127 + 2 = 129.
entonces queda lo siguiente
0 * 10000001 * 10100110101001101010011
0 porque es positivo 1 bit
10000001 = 129 8 bits
y el resto porque es periodico se repiet hasta ocupar los 23 bits de la simple precision

Nota unidades
rpm = revoluciones por minuto
rps = revoluciones por segundo
RPS = rotational positional sensing (152 Stallings)
Hz = 1 ciclo cada segundo = 1/segundo
MHz = 1 milln de ciclos cada segundo = 10^6/segundo
GHz = mil millones de ciclos cada segundo = 10^9/segundo

NOTA DE DIRECCIONAMIENTO

*Si tiene el nmero(llamalo "operando" si tens que explicarlo en el final) en la instruccin, por ejemplo ADD
*Si tiene la direccin, por ejemplo ADD BX,[1053] es directo o absoluto.

*Si el operando est incluido en el cdigo de operacin, por ejemplo INC BX (INC es que le suma 1) es impl

Si son dos registros, ej ADD BX,DX es por registro.


Si te pone la direccin de una direccin, es indirecto, ejemplo mover reg,((0200)), accede a la direccin indi
Si utiliza un registro ndice (SI o DI) es indexado.

ejercicio copado de assembler

EJERCICIO ASSEMBLER
AX 0000 BX 0000 CX 0000 DX 0000 SP FFEE BP 0000 SI 0000 DI 0000
DS 1344 CS 1344 ES 1344 IP 0100

1)Teniendo en cuenta el valor de estos registros, calcular la direccion fisica a la que se accederia mediante la
POP ECX
MOV AX, [BP]

2)Cual es el tamao maximo de un segmento si el registro que se debe considerar como desplazamiento en

1. POP ECX
SS *10 + SP + 1
DS*10 + BP
Explicacin:

POP ECX
Segn Quiroga, pgina 195, el Stack Pointer apunta al prximo lugar vaco de la pila, es decir, si uno quiere
SSx16 + SP + 1= 1344*10+ FFEE + 1 = 13440 + FFEE = 2342E
MOV AX, [BP]

Esta instruccin lo que hace es ir a la direccin contenida en el registro que est entre corchetes y fijarse qu
1344(hexadecimal)*10(hexadecimal)+ 0000(hexadecimal) = 13440

MEGA EXPLICACION ASSEMBLER

Cul es el tamao maximo de un segmento si el registro que se debe considerar como desplazamiento en la

Si vos tens un segmento de supongamos, 100bytes, tu desplazamiento va a ir de 0 bytes(comienzo del pri


Ac te dicen que el desplazamiento est dado por IP, te dicen que su valor es 0100, eso es en hexadecimal,
de desplazamiento, ese es el tamao del segmento,

A qu lugar fisico de ese segmento se esta direccionando actualmente?


IP es el Instruction Pointer, te indica el desplazamiento sobre CS, Code segment
Para calcular la direccin hacemos como antes:
CSx16+IP = 1344*10 + 0100 = 13540

Te pongo un poco de info sobre los registros a ver si queda ms claro(Cualquier contradiccin con la teora e

Registros de clculo(as los llaman en los finales, muchas veces te dicen "considere que los registros de c
Los nombres que se les pone se refieren a para qu se usan generalmente, pero uno los puede usar como q
AX: acumulador
BX: Base
CX: Contador
DX: Datos, direccin de datos.
Registros ndices: Se usan para moverse en un vector.
SI: se autoincrementa solo.
DI: se autodecrementa solo.

Por ejemplo, lo que se hace es guardarse en BX el lugar donde empieza tu vector, por ejemplo 0000 (base d
DS 1344 SI 0000
MOV AX, 0000; Pongo en 0 AX
ADD AX, [BX+SI]; Le sumo a AX
ADD AX, [BX+SI]; Le sumo a AX
ADD AX, [BX+SI]; Le sumo a AX
ADD AX, [BX+SI]; Le sumo a AX

lo
lo
lo
lo

que
que
que
que

est
est
est
est

en
en
en
en

la
la
la
la

direccin
direccin
direccin
direccin

DSx16
DSx16
DSx16
DSx16

+
+
+
+

BX
BX
BX
BX

+
+
+
+

SI=
SI=
SI=
SI=

13440
13440
13440
13440

+
+
+
+

0000
0000
0000
0000

+
+
+
+

0000 = 1
0001= 1
0002 = 1
0003 = 1

Otro caso: Si los elementos de tu vector ocupan n bytes, tendras que ir sumando de n bytes en vez de a un
ADD AX, [BX + SI*n]

Registros Punteros:

IP: Puntero de instrucciones.


SP: Puntero de pila, apunta al prximo lugar a llenar de la pila.
BP: Puntero base de pila, se lo usa para apuntar a la base de la pila o a veces cuando se quieren usar eleme
Registros de Segmentos
Te indican en qu direccin empieza el segmento.
DS: segmento de datos.
SS: segmento de pila.
CS : segmento de cdigo
ES, FS y GS: segmentos extra (para que el programador los use cuando necesita ms)
Clculo de direcciones:
Forma de expresar direccin: base:desplazamiento
Se calcula: basex16 + desplazamiento

Nota: 16 decimal es 10 en hexadecimal, as que multiplicar por 16 la base es lo mismo que agreg

Lugar vaco de la pila: SS:SP = SSx16 + SP


ltimo elemento de la pila: SS:SP+1 = SSx16+SP+1

Nota: cuando hagas algn clculo con SP, dec que apunta al prximo lugar vaco de la pila, porqu

Direccin de la prxima instruccin a leer: CS:IP =CSx16+IP


Direccin de una instruccin (ejemplo):
0100 MOV AX, 0000
Su direccin es: CS:0100 = CSx16 + 0100
Direccin de un dato(ejemplo):
MOV AX,[BX]; la direccin es DSx16+BX
MOV AX,[DS:BX]; la direccin es DSx16+BX
MOV AX,[ES:BX]; la direccin es ESx16+BX
A esto se le llama direccionamiento relativo a una base.

MAS DE ASSEMBLER
ROL AX,1 rota los bits de AX una vez hacia la izquierda.
ROR AX,1 rota los bits de AX una vez hacia la derecha.
SAL AX,1 desplazamiento del tipo aritmtico de los bits de AX una vez hacia la izquierda.
SAR AX,1 desplazamiento del tipo aritmtico de los bits de AX una vez hacia la derecha.

NOTA CACHE
En totalmente asociativa, estoy absolutamente seguro, que usa el LRU.
Correspondencia directa o de 1 va NO USA algoritmo de reemplazo
asociativa n vias y cualquiera de ellos.

ejercicio assembler

1)INC DH
a DH le asigna 01
2)a)8A3E
b)BF01
c)1B550+0100 = 1B605
d) little endian

o sea DX= 0100

puesto que DX esta compuesto por DHDL

--

ejercicio del orto de punto flotante de precision


primero)
La siguiente cadena hexadecimal corresponde a un punto flotante de 32 bits y se muestra en
convenio littleendian
indicar a que numero decimal corresponde 00 00 40 3F
Respuesta:

Littleendian:
El byte de menos peso se almacena en la direccion mas baja de memoria
Bigendian:
El byte de mas peso se almacena en la direccion mas baja de memoria
Basicamente si el enunciando dice little enndian tenes que dar vuelta el numero, en este caso
3F 40 00 00 , y si dice big endian se deja como esta.
Luego se pasa a binario, 3F 40 00 00(16)= 00111111010000000000000000000000(2)
0 01111110 10000000000000000000000
1 8 23 bits
S exponente mantisa
Lo que hice fue tomar el primer bit que me indica el signo mas los 7 bits siguientes y eso me indic
el exponente, y el resto de los bits me indican la mantisa. Ahora hay que buscar el exponente, par
eso agarro los primeros 8 bits (el de signo con los de exponente) y se lo resto a 127 en binario. En
este caso
127(10)= 01111111(2)
01111110 01111111 =11111111(2)=

-1

126 -127 (SIEMPRE SE PONE ASI ESTO ; SE LE RES

es el exponente en decimal

ahora agarro la mantiza.. Era 10000000000000000000000 . Siempre arranco de izqierda a de


con ese numero 2^-1 lo que hago es sumarle 1 al instante siempre, al resultado de la cuenta de

1.5
1,5 x 2^-1 .. Ese numero se multiplica por 2^exp.. Siendo exp el numero que sacamos del "e
0,75 respuesta final

segundo)
Por lo que el numero en realidad es 35C1F000

35C1F000 convertido a binario:


0|01101011|10000011111000000000000
dividimos en: 1 bit de signo, 8 de exponente, 23 de mantisa
Signo: 0 -> +
Exponente: 01101011 -> 107 -> le restamos el exceso -> 107 - 127 = -20 -> como son potencias de 2 nos
Mantisa: 10000011111000000000000 -> 2^-1+2^-7+2^-8+2^-9+2^-10+2^-11 = 0.515136719 -> Se le
Multiplicamos todo:
2^-20 * 1.515136719 = 1.44494697 E -6

tercero) (este tiene pasar a flotante y volver a decima


a)Tenemos 165,625

pasarlo a la pija esta

10100101,101(2)

corro la coma hasta el ultimo uno que tenga a la izqierda, 7 lugares van a ser.. Ok?
1,0100101101(2) y la corri 7 lugares
ese siete se lo sumamos a 127 para formar la linea de signo EXPONENTE mantiza
7+127 = 134 134 en binario forma exponente, q son 8 bits recordemos
En binario: 10000110

ahora armamos el coso


ah, el signo es 0 porque 165,625 es positivo. Si fuera negativo es 1

0
10000110
0100101101+ceros hata llegar a 23 bits
la mantiza es lo que queda despues de la coma en 1,0100101101(2) y agregandole tantos ceros f
01000011001001011010000000000000==>>>>>>Rtafinal

b)ahora vamos a comprobar si hasta ahora fue todo una falopeada o de verdad es asi.
0 signo es positivo

10000110 en decimal es 134 - 127 = 7 o sea 2^7----------------> SIETE POSITIVO GIIIILLLLLLL !!!!
01001011010000000000000==> mantiza. O sea 2^-2 + 2 ^-5 + 2^-7 + 2^-8 + 2^-10 nota r
0,293945312+1 y el resultado multiplicado por 2^7
y nos daaaaaaaaaaaaa!!!!!!!!!!!!!!!!!1111111111111 ojo que el 7 es positivo !!!!!

cuarto)
00111111100000000000000000000000==> es 1. Vamos a verificarlo
0 signo
01111111 => es 127. 127 - 127 = 0 o sea 2^0 = 1.

quinto)
00035C1F convertido a binario:
0000 0000 0000 0011 0101 1100 1111
Y ahora dividimos en: 1 bit de signo, 8 de exponente, 23 de mantisa
0 ! 0000 0000 ! 0000 0110 1011 1000 0011 111

Signo: 0 -> +1(positivo)


Exponente: 0000 0000 (Desnormalizado) -> Equivale al -126. Fijate siempre que te de este exp estas en el

Mantisa: -> 2^-6+2^-7+2^-9+2^-11+2^-12+2^-13+2^-19+2^-20+2^-21+2^-22+2^-23 = 0,0262488

Multiplicamos todo:
2^-126 * 0,02624881268 = 3,0855 E -40

dores-final-del-13-02-2013

mrica, incluso para datos en representacin de punto flotante o cuando se almacena una referencia a memoria."

e 10 bits?

to ocurre para cualquier entidad numrica, incluso para datos en representacin de punto flotante o cuando se almacen

alabra utilizada del segmento de pila, sin modificar su criterio LIFO" (pgina 268 del libro de Quiroga)

r a la pila como si fuera cualquier parte de la memoria. Con SP podras hacerlo tambin, pero no se hace porque no que

re locooooo

direccionar. Es decir, en este caso, la suma de cantidad de bits que se utilizan entre ETIQUETA + LINEA + POSICION,

nmeros ms bajos que las ocupadas, el ltimo lugar ocupado es SSx16+SP+1 (Un lugar ms arriba que el lugar vac

uccin fuera MOV AX, [ES:BP] la base sera ES. Para calcular la direccin a la que se accede se hace lo mismo de siem

para as poder volver a la funcin original).

una referencia a memoria."

a "lindo" ya que no ests manteniendo el criterio LIFO. En vez de BP tambin podras usar otro registro (o eso me pare

ene que dar 30.

), esa sera la respuesta de a qu direccin se accede al llamar la instruccin POP ECX, el problema es que no tens

pre, base*16+desplazamiento, en este caso sera DSx16+BP, que nos da:

otro registro (o eso me parece) lo que pasa es que hay como una especie de reglas como la de usar BX o BP como bas

problema es que no tens Stack Segment, no s si te olvidaste de copiarlo o no te lo dieron... Igual por lo que veo pus

de usar BX o BP como base, CX como contador, etc. Despus SI y DI se usan como ndice pero se justifica ya que se a

... Igual por lo que veo pusieron a todo en el mismo segmento, suponiendo que SS valiera lo mismo que

pero se justifica ya que se autoincrementan/decrementan porque estn hechos para eso.

o mismo que DS, ES y CS la respuesta sera:

También podría gustarte