Soy un desarrollador de software (usando lenguajes de alto nivel como .NET, C, C++, etc.) tratando de entender cómo funcionan las computadoras a un nivel más bajo.
Estoy familiarizado con este diagrama:
Estoy tratando de obtener una visión de alto nivel de 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 en 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.
El problema es que para comprender cómo la computadora llega a 1 + 2 = 3, debe comprender aproximadamente 2 niveles más profundos de lo que ha llegado.
Aproximadamente , una computadora está organizada (en términos de campos de estudio) así desde el nivel más alto de abstracción hasta la realidad más física:
Para comprender correctamente por qué la computadora puede producir 2+1 = 3, primero debe decidir qué está dispuesto a aceptar "por fe" y qué no creerá hasta que lo interiorice. 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, deberá 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 propósito general capaz de sumar/restar, incluido el acarreo y el acarreo.
También deberá comprender cómo se representan los números en complemento a 2 (el sistema numérico utilizado en las computadoras modernas para la aritmética de enteros).
Si realmente desea un curso introductorio de clase mundial, no puedo recomendar lo suficiente al profesor Scott Wills de Georgia Tech. Falleció el año pasado de cáncer, pero su rumbo sigue vivo . La clase de Georgia Tech ECE2030 (introducción a la ingeniería informática) tiene su libro de texto y ejercicios en línea.
¡Buena suerte!
Tuve que aprender lo mismo en la universidad, y usamos el libro Organización y diseño de computadoras que era muy detallado (pero tal vez sea demasiado detallado para tus necesidades).
Patterson y Hennesy usaron un procesador MIPS "simple" y mostraron la función completa de la CPU con un código de muestra en Assembler.
En general, creo que sería una gran idea tomar un procesador "simple" (Arduino o algo así) y tratar de entender allí la función, porque las diferencias entre ese y el más complejo están más en qué tan grandes son los códigos de instrucción implementados.
PD Tal vez el microprocesador elemental de Google Code sería útil. Es un microprocesador simulado en Java.
El libro gratuito How Computers Work - Processor and Main Memory de Roger Young responderá a su pregunta, utiliza relés en lugar de transistores para una mejor comprensión.
Encontré mi respuesta aquí . Es una descripción general de alto nivel del proceso de sumar números.
usuario_1818839
estrella azul