Supongo que está buscando un punto de partida, que le brinde una introducción amplia o una visión general, desde donde pueda explorar temas más específicos, ¿verdad?
Para mí, este fue el libro llamado ‘Código: el lenguaje oculto de software y hardware’ de Petzold. Le da un poco de historia sobre cómo surgieron las computadoras y la representación binaria de datos. También describe cómo funcionan un sistema informático mínimo y sus componentes.
Después de leer este libro, mi perspectiva hacia las computadoras cambió. Te das cuenta de cómo se pueden entender incluso los sistemas de hardware y software más complicados dividiéndolos en bloques de construcción más simples.
- ¿Qué debo aprender para convertirme en ingeniero aeroespacial de la NASA?
- ¿Alguien puede hablarme sobre la colocación de ingeniería mecánica BE [hons] en BITS, Pilani?
- ¿Qué hacen los ingenieros mecánicos que pueden hacer los matemáticos industriales?
- ¿Existe alguna organización global en la que un ingeniero ambiental pueda trabajar con un salario alto?
- ¿Puede un graduado de ingeniería civil hacer un MBA en finanzas?
Una vez hecho esto, puede profundizar en el lado del hardware o software. O tal vez incluso la investigación teórica.
- Para hardware, le sugiero que comience en The Elements of Computing Systems
- Para el software, creo que la mejor opción sería el lenguaje de programación C de K&R. La gente puede decir que es anticuado o difícil. No es ninguno. Casi todo lo dicho en ese libro sigue siendo válido, al menos para un principiante. Y le enseña un buen estilo de programación (el núcleo de Linux toma prestado de esta guía de estilo). Y no será difícil si entendió lo que Petzold dijo sobre la memoria de la computadora.
- Para la investigación, probablemente lo mejor sería acostumbrarse primero a la forma algorítmica de pensar. Elija un texto de texto para principiantes. Prueba los algoritmos desbloqueados por Cormen.