Red de conocimientos turísticos - Información de alquiler - ¿Por qué no se recomienda utilizar declaraciones goto?

¿Por qué no se recomienda utilizar declaraciones goto?

La instrucción goto es una instrucción de transferencia, que cambia directamente la IP del puntero de instrucción actual de la CPU a la dirección de instrucción señalada por la instrucción goto y luego continúa la ejecución desde esta dirección. Desde la perspectiva del lenguaje ensamblador, la declaración goto corresponde a la instrucción jmp del lenguaje ensamblador. Sin embargo, el peligro del lenguaje ensamblador es que el salto de la instrucción jmp no está restringido o es menos restringido. El nivel de instrucción de la máquina puede saltar a voluntad. En realidad, es muy difícil verificar estrictamente las instrucciones antes de ejecutarlas.

Los primeros lenguajes de algoritmos, como fortran, pascal, basic, etc., admitían declaraciones goto, porque había menos declaraciones en ese momento y era necesario implementar estructuras de rama y estructuras de bucle con la ayuda de Ir a declaraciones. Sin embargo, estos lenguajes de alto nivel tienen restricciones estrictas sobre las declaraciones goto. Por ejemplo: (1) Puede saltar desde el interior de una estructura (condición, bucle) al exterior, pero no al revés; no está permitido saltar directamente desde una subrutina, pero es necesario utilizar una declaración de retorno similar a return para salir de la subrutina. Por supuesto, está absolutamente prohibido saltar desde el programa principal a una subrutina, etc. Estas limitaciones todavía se aplican a los lenguajes algorítmicos modernos que también admiten declaraciones goto.

Con la estructuración y modularización de los lenguajes, algunos lenguajes de alto nivel ya no admiten declaraciones goto. Esto se hace para que el programa sea más fácil de leer y comprender, y para facilitar el mantenimiento del código.