Juguemos al Z80 1: Un procesador de registros y memoria.

En el capítulo anterior enumeramos las máquinas de la era de los 8 bits que habian llevado este chip o alguno de sus clones como cerebro principal. En este trataremos de sentar las bases técnicas que nos permitirán programarlo.

Estructura de un Z80

El Z80 es un microprocesador de 8 bits (bus de datos de 8 bits) , con un bus de direcciones de 16 bits, lo que le permite direccionar hasta 64Kb de memoria.

En esencia el procesador trabaja con la memoria y una serie de registros internos entre las que intercambia información y que usa como fuentes de datos para ejecutar instrucciones de hasta 16 bits.

No es un procesador multihilo, por lo que las instrucciones se ejecutan de forma secuencial usando un área de memoria como almacén del programa el puntero PC como indicador de la dirección de memoria que contiene la instrucción que debe ejecutarse.

Escribiendo programas

Nuestro programa consta de diferentes instrucciones y datos en secuencia, el tamaño de cada instrucción (más sus datos) varían, pero esencialmente el programa contiene todas las instrucciones una tras la otra y el procesador las va ejecutando en el orden establecido.

A este nivel no existen funciones, ni bloques de código ni nada, solo instrucciones que se configuran secuencialmente e instrucciones de salto que permiten tomar decisiones básicas. Es todo.

A pesar de sus limitaciones, se pueden lograr resultados más que interesantes, aunque lograrlo lleva más trabajo que “el típico script php de hoy en dia”.

Es por ello, por su sencillez, por lo que los procesadores de esta era son un recurso tan valioso para poner en práctica ideas innovadoras y aprender a programar de forma eficiente.

En el próximo capítulo comenzaremos a ver los registros y el conjunto de instrucciones, así como el método para trabajar con el.

Dado que nuestro target aquí no es el hardware, aprenderemos sobre el procesador programando sobre el. Hay documentación sobrada sobre el hardware de este procesador y sus clones disponible online si quieres saber más sobre “los hierros”, como comúnmente se llama a la parte que cruza la barrera del software.

Lecturas Recomendadas

De la mano de Sergio thEpOpE, este artículo de wikipedia: “Arquitectura de Von Neumann

¡Compártelo!

Ayudame a difundir este contenido a todo aquel que pueda sacarle partido, difundelo en redes, cuéntaselo a tus amigos, coméntalo en la cola del supermercado, además de aportar, ¡seguro que conoces a gente interesante y acabas uniéndose al bando rebelde!

Sígueme en Redes

Acelera mi progreso de la materia que te interesa.

El calendario y ritmo de publicaciones actualmente responde a mis necesidades de estudio y desarrollo de proyectos personales, si quieres invertir en que acelere alguna materia concreta, te ofrezco una posibilidad:

Puedes donar en mi paypal (paypal at metsuke.com), indicando la materia, por cada 25 euros donados, priorizaré un capítulo de la materia que me indiques que ya tenga escrito para que salga el proximo dia viable y disponible de lunes a viernes (en orden de llegada y a un post diario).

En caso de que el capítulo aún no exista, centraré mi atención en escribirlos y publicarlos con prioridad, pero no puedo prometer inmediatez.

De nuevo priorizaré las donaciones por orden de llegada pero cuando coincidan varias, iré rotando cada dia una para evitar la monopolización de mi foco de tareas.

Me reservo el fin de semana para priorizar lo que considere pertinente en el caso de que haya cola de entrega. Si te gusta el proyecto, ¡es un buen modo de apoyarme!

¿Te interesan mis servicios como consultor?

En ese caso, pudedes contactarme en mi correo r.carrillo@metsuke.com y cuéntame que necesitas, si lo que leo me gusta, te pongo en contacto con el comercial de mi empresa de consultoría.

Si quieres que sea yo expresamente quien te atienda, puedes indicármelo y llegamos a un acuerdo.

Advierto que esta última posibilidad te saldrá bastante más cara que hablar con mi equipo, pero si es lo que deseas, a tu disposición.

Un Abrazo.

Sobre las traducciones

Por el momento me he visto obligado a detener la traducción del contenido, apenas doy abasto a escribirlo (que es mi objetivo, ya que son mis apuntes de estudio), por lo que no parece tener sentido mantener activas unas traducciones que no doy abasto a crear.

En caso de que más adelante el flujo de caja me lo permita, es mi intención contratar servicios de traducción y editores que realicen la tarea, pero por ahora lo dejo desactivado.

Quizá te interese leer más sobre Z80

Una Respuesta a “Juguemos al Z80 1: Un procesador de registros y memoria.”

Dejar una Respuesta

XHTML: Usted puede usar las siguientes etiquetas: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>