¿por qué no usar microcódigo? [cerrado]

-4

¿Por qué los programadores no escriben aplicaciones en microcódigo?

¿Es porque microcódigo es difícil de entender y escribir o la mayoría de los procesadores no son compatibles con microcódigo?

Quiero el motivo

    
pregunta awan

3 respuestas

2

El conjunto de instrucciones del código de máquina y los detalles de lo que hace cada instrucción es parte de la especificación del procesador. Por lo general, los procesadores posteriores de una familia determinada admiten las mismas instrucciones que los modelos anteriores, a menos que haya una buena razón. En otras palabras, el conjunto de instrucciones es un objetivo estable para que los programadores codifiquen. Por otra parte, el microcódigo no está normalmente disponible para el programador, o no está especificado en absoluto. Es un detalle de implementación, y el fabricante tiene la libertad de cambiarlo radicalmente entre diferentes diseños de chips si se ajusta a sus propósitos. Si el microcódigo fuera parte de la ISA, esa libertad se perdería y probablemente terminaríamos necesitando un microcódigo (¿un nanocódigo?) Para compensarlo.

    
respondido por el hobbs
0

El enfoque general de la programación moderna de software es abstraer el nivel de complejidad anterior. Si se programa una aplicación de televisión como la de pago por transmisión, el programa puede encontrar una ventaja para las comunicaciones abstractas de Internet y concentrarse en la reproducción de video. Del mismo modo, un arquitecto compilador que esté muy familiarizado con el código de máquina de un procesador puede preferir no involucrarse en el microcódigo que administra las puertas y la lógica del procesador.

    
respondido por el st2000
0

El motivo es que la mayoría de todos los microcódigos existen como firmware dentro de las CPU y las MPU. Por lo general, las instrucciones se envían a la CPU como ensamblador, que se ha traducido en tiempo de 'compilación' desde C o C ++. El microcódigo es principalmente un problema solo para los fabricantes de CPU y MPU y algunos FPGA. Es la versión descodificada de las instrucciones básicas que se suministran a la CPU, a menudo de 40 bits de ancho o más. Estos bits individuales actúan para establecer el origen de los datos y el destino en la CPU. Además, estos bits controlan la ALU y los subsistemas de captación previa, L1 y quizás también la L2.

En las MPU y FPGA hay muchos subsistemas para controlar. El microcódigo de hoy se maneja con el firmware existente que crea y preprograma las CPU antes de la prueba de obleas. Cuanto más controlen e implementen las máquinas este proceso de microcódigo, mayores serán los rendimientos en buenos chips fuera de la oblea.

Es posible que los humanos deban involucrarse en las capas abstractas en términos de crear nuevas CPU que necesiten un nuevo firmware y un microcódigo, pero cada año, el ensamblaje robótico realiza una mayor cantidad de trabajo, eliminando todas las posibilidades de error humano posible.

¿Alguien recuerda el Pentium 90 y sus problemas con la matemática FP?

    
respondido por el Sparky256

Lea otras preguntas en las etiquetas