La arquitectura de mi PC es de 64 bits y mi CPU (si afecta en algo) AMD 3950X. ¿Alguien podría indicarme como puedo hacerlo para conseguir la información equivalente a un microcontrolador?
Te interesa el ensamblador x86 (
arquitectura x86 64 bit). Aquí tienes información de la propia AMD sobre los registros de sus procesadores:
Developer Guides, Manuals & ISA Documents - AMD Ten en cuenta que también existen más juegos de instrucciones y registros específicos que no están en el x86, como SSE o AVX, y que tu procesador también incorpora.
Dicho eso, yo no te recomiendo invertir demasiado en ensamblador en procesadores x86 salvo que sepas al 100% dónde quieres meterte. Con eso no me refiero que sepas o no ensamblador, sino que tengas
echado el ojo a algún uso realista y accesible (empleo principalmente) para el ensamblador x86. Si no es el caso (y me atrevo a apostar por que no lo es), no te recomiendo entrar muy fuerte en el mundo del ensamblador x86.
En su día aprendí ensamblador e hice algunas cosas más por aprender y tener cultura general que otra cosa. Nunca me ha hecho falta, y creo que en toda mi vida profesional no he visto ni una sola oferta de empleo donde se exigiera ensamblador x86. En cambio,
para microcontroladores sí que va bien y es un nicho mucho más amplio que el de x86.
Una buena práctica en tu situación sería escribir algún código en C que consistiera en algo más que hacer un par de sumas y que
escribieras un código que hiciera lo mismo en ensamblador, para después comparar el rendimiento de ambas versiones así como examinar qué ensamblador ha generado el compilador de C. Te darás cuenta de que el compilador está
optimizando el código mucho más agresivamente que tú y que está haciendo algunas cosas que a ti no se te ocurriría hacer nunca, dando como resultado que tu ensamblador, en principio muy optimizado, rinde peor que tu código en C.
En resumen, creo que está bien conocerlo, pero sabiendo que su uso real en ordenadores es MUY nicho. Algunos ejemplos:
Why do you program in assembly? (aunque el link tiene ya una edad).
El panorama es totalmente distinto en PC que en los microcontroladores. En este caso
la recomendación si quieres bajo nivel es C, C++, Rust y Go, y ensamblador sólo de forma muy puntual. No obstante como cultura general los enlaces que hemos visto hasta ahora tienen mucha info y creo que sí que viene bien leerlos para saber qué hay bajo el capó en la CPU.