La conexion
Enviado por Mariano Reggiardo • 26 de Junio de 2023 • Apuntes • 1.339 Palabras (6 Páginas) • 51 Visitas
La conexion.
Informatica, computacion, todos nombres que hablan sobre "la informacioN" , todo es informacion y la computadora procesa informacion .. esa es su tarea. como vimos el microprocesador hace eso exactamente es un motor que va avanzando tomando datos y llamando circuitos, por medio de un gran multiplexor, segun los valores que encontro en cada posicion de memoria.
la programacion podriamos decir es de que forma intercambiamos estas instrucciones para que la computadora haga exactamente lo que nosotros queramos.
Hace un tiempo ya, aparecio un lenguaje llamado logo, dificil fue entender porque a un pibe de 12 años le enseñaban eso.. justamante es la forma mas elementar en que se aparende a dar ordenes , uno aprende lo que es una secuencia , una cadena logica de comando, aunque aplicada a hacer caminar una estupida totuga en forma de triangulo.. Extrañamente en mi mente causo un efecto un efecto muy interesante ( unque no se si dañino o no ).
on simples sentencias utilizando las inicales ordenabamos el camino que la tortuga debia recorre.
De80
Ar25
Iz80
Ac25
para hace un rectangulo
mas avanzado podiamos hacerla girar en angulos y demas.
Existen en la actualidad infitos lenguajes de programacion , pero en realidad solo existe uno fisicamente que es el que el micro entiende, llamado Codigo de maquina. Los mismos fabricantes para no volverse locos con estos numeros, comenzaron a codificarlos con nombres mas entendibles y crearon el Assembler.
EL ASSEMBLER
Cada micro posee su assembler y no necesariamente sonigueles es mas seguro son distintos.
Cada sentencia en assmbler posee una relacion unica con un proceso de la computadora. Por eso el assembler es el lenguaje mas cercano a codigo de maquina. Cada senetncia en assembler se llama Mnemonico y simboliza una operacion logica en el procesador. Con la tabla de mnemonicos de unmicro podemos llevar un programa en assembler a codigo de maquina directamente.
Alguna vez programando kit de desarrollo del 6800 tue que hacer esas peripecias ya que solo habia que cargar en memoria las senetencias bit por bit con un pad Hexadecimal.
POr ejemplopara ilustrar vamos a ver algunas de las intrucciones del Z80 y las informacion que existe
Aca vemos los opCodes o Mnemonicos tstates es la cantidad de operaciones que usa o "Compuertas logicas" que activa y explnation los que hace.
opcode t-states explanation
ADC A,r 4 Add with carry register r to accumulator.
ADC A,n 7 Add with carry value n to accumulator.
ADC A,(HL) 7 Add with carry location (HL) to acccumulator.
ADC A,(IX+d) 19 Add with carry location (IX+d) to accumulator.
ADC A,(IY+d) 19 Add with carry location (IY+d) to accumulator.
La de abajo es la codificacion Hexadecimal de algunas instrucciones
POr ejemplo si el micro al leer en la memoria un 01 automaticamente activa el circuito LD BC,nn.
BYTE OPCODE
00 NOP
01 LD BC,nn
02 LD (BC),A
03 INC BC
04 INC B
05 DEC B
06 LD B,n
07 RLCA
Una observacion interesante es que por ejemplo un Z80 funcionaba a unos 3.58 Mhz o sea 3 580 000 ciclos .. generalmente por cada ciclo de reloj una compuerta era activada por tanto la instruccion
ADC A,r Add with carry register r to accumulator.
tardaria
4 ciclos/3580000 ciclos/segundos = 1.1 microsegundo
Imaginemos ahora la misma instruccion en una maquina de 1.4Ghz o sea 1400Mhz unas 400 veces mas rapido
veamos una instruccion del X86
opcode
INC - Adds one to destination unsigned binary operand.
Clocks
286 386 486 Size Bytes
7 6 3 2-4
Es interesante ver como segun el micro que uses la canntidad de ciclos de reloj es menor o sea para hacer un INC en 486 es dos veces mas rapido que en un 286, en lso micros RISC este tiempo es aun menor.
Se que todo esto es complicado per es necesario saberlo para tener una idea del funcionamiento de la maquina.
La programacion assembler es loq ue se llama prograacion linear o sea el codigo va siguiendo instrucciones una a una, es muy rapida pero cuando hay mucho codigo se vuelve engorrosa
...