Soy un desarrollador de software (que usa lenguajes de alto nivel como .NET, C, C ++, etc.) tratando de entender cómo funcionan las computadoras en un nivel inferior.
Estoy familiarizado con este diagrama:
Estoy tratando de obtener una visión de alto nivel sobre cómo el diagrama en el enlace se asigna a un diagrama de circuito como este:
Por ejemplo, eche un vistazo a la declaración del lenguaje ensamblador:
ADD 1,2
Estoy tratando de entender cómo el procesador produce '3' como salida. Me doy cuenta de que esta pregunta puede ser difícil de responder en términos simples. Si es así, entonces un enlace ayudaría, tal vez a un libro.
microprocessor
w0051977
fuente
fuente
Respuestas:
El problema es que para comprender cómo la computadora llega a 1 + 2 = 3, debe comprender unos 2 niveles más profundos de lo que ha ido.
Aproximadamente una computadora está organizada (en términos de campos de estudio) como esta desde el más alto nivel de abstracción hasta la realidad más física:
Para comprender adecuadamente por qué la computadora puede producir 2 + 1 = 3, primero debe decidir qué está dispuesto a aceptar "por fe" y lo que no creerá hasta que lo internalice. Esa información estará en el nivel dos debajo de lo que entiendes. Entonces, si desea comprender un circuito sumador en el nivel lógico, necesitará comprender los conceptos básicos de los transistores "digitales" (específicamente CMOS).
Usando su sitio anterior como ejemplo, considere este recurso . Analiza el "sumador completo", el circuito mínimo de uso general capaz de sumar / restar, incluido el transporte y la extracción.
También deberá comprender cómo se representan los números en el complemento a 2 (el sistema de números utilizado en las computadoras modernas para la aritmética de enteros).
Si realmente quieres un curso introductorio de clase mundial, no puedo recomendar al profesor Scott Wills en Georgia Tech lo suficiente. Falleció el año pasado de cáncer, pero su curso continúa . La clase Georgia Tech ECE2030 (introducción a la ingeniería informática) tiene su libro de texto y ejercicios en línea.
¡Buena suerte!
fuente
Tuve que aprender lo mismo en la universidad, y utilizamos el libro Computer Organization and Design que era muy detallado (pero tal vez es demasiado detallado para sus necesidades).
Patterson y Hennesy usaron un procesador MIPS "simple" y mostraron toda la función de la CPU con algún código de muestra en Assembler.
En general, creo que sería una buena idea tomar un procesador "simple" (Arduino más o menos) y tratar de comprender la función, porque las diferencias de eso a las más complejas están más en qué tan grandes son los códigos de instrucciones implementados.
PD: Quizás sea útil el microprocesador elemental de Google Code. Es un microprocesador simulado en Java.
fuente
El libro gratuito Cómo funcionan las computadoras: procesador y memoria principal de Roger Young responderá a su pregunta, utiliza relés en lugar de transistores para una mejor comprensión.
fuente
Encontré mi respuesta aquí . Es una descripción general de alto nivel del proceso de sumar números.
fuente