fbpx
Wikipedia

Código redundante

En programación, se conoce como código redundante a cualquier parte del código fuente que tenga algún tipo de redundancia tales como recalcular un valor que ha sido calculado previamente y todavía está disponible.[1]

Una instrucción NOP podría ser considerado como código redundante que ha sido explícitamente insertado para rellenar el flujo de instrucciones o introducir un retardo de tiempo, por ejemplo para crear un bucle de temporización para "perder el tiempo". Los identificadores que se declaran, pero nunca se les hace referencia, se denominan declaraciones redundantes.

Ejemplos

int foo(int X) {  int Y = X*2;  return X*2; } 

En este ejemplo la instrucción int Y = X*2; puede ser eliminada para evitar calcular el valor dos veces, o también se puede retornar el valor de la variable Y (aunque particularmente este método consume más memoria).

Considerando:

#define min(A,B) ((A)<(B)?(A):(B)) int magnitud_mas_corta(int u1, int v1, int u2, int v2) {  /* retorna la magnitud mas corta entre (u1,v1) y (u2,v2) */  return sqrt(min(u1*u1 + v1*v1, u2*u2 + v2*v2)); } 

Como consecuencia de usar el preprocesador de C el compilador escribirá la forma expandida:

int magnitud_mas_corta(int u1, int v1, int u2, int v2) {  int temp;  if (u1*u1 + v1*v1 < u2*u2 + v2*v2)  temp = u1*u1 + v1*v1; /* Redundante */  else  temp = u2*u2 + v2*v2; /* Redundante */  return sqrt(temp); } 

Provocando un código totalmente redundante e ineficiente, sin embargo debido a que los macros de máximo y mínimo son muy utilizados los compiladores modernos detectan estas situaciones y corrigen el código generado.

Eliminación

Existen técnicas de optimización de software comúnmente llevadas a cabo por un compilador optimizador para eliminar el código redundante del código fuente. La más común es la eliminación de código muerto.

Véase también

Referencias

  1. Debray, S. K., Evans, W., Muth, R., and De Sutter, B. 2000. Compiler techniques for code compaction. ACM Trans. Program. Lang. Syst. 22, 2 (Mar. 2000), 378–415.
  •   Datos: Q1251793

código, redundante, programación, conoce, como, código, redundante, cualquier, parte, código, fuente, tenga, algún, tipo, redundancia, tales, como, recalcular, valor, sido, calculado, previamente, todavía, está, disponible, instrucción, podría, considerado, co. En programacion se conoce como codigo redundante a cualquier parte del codigo fuente que tenga algun tipo de redundancia tales como recalcular un valor que ha sido calculado previamente y todavia esta disponible 1 Una instruccion NOP podria ser considerado como codigo redundante que ha sido explicitamente insertado para rellenar el flujo de instrucciones o introducir un retardo de tiempo por ejemplo para crear un bucle de temporizacion para perder el tiempo Los identificadores que se declaran pero nunca se les hace referencia se denominan declaraciones redundantes Indice 1 Ejemplos 2 Eliminacion 3 Vease tambien 4 ReferenciasEjemplos Editarint foo int X int Y X 2 return X 2 En este ejemplo la instruccion int Y X 2 puede ser eliminada para evitar calcular el valor dos veces o tambien se puede retornar el valor de la variable Y aunque particularmente este metodo consume mas memoria Considerando define min A B A lt B A B int magnitud mas corta int u1 int v1 int u2 int v2 retorna la magnitud mas corta entre u1 v1 y u2 v2 return sqrt min u1 u1 v1 v1 u2 u2 v2 v2 Como consecuencia de usar el preprocesador de C el compilador escribira la forma expandida int magnitud mas corta int u1 int v1 int u2 int v2 int temp if u1 u1 v1 v1 lt u2 u2 v2 v2 temp u1 u1 v1 v1 Redundante else temp u2 u2 v2 v2 Redundante return sqrt temp Provocando un codigo totalmente redundante e ineficiente sin embargo debido a que los macros de maximo y minimo son muy utilizados los compiladores modernos detectan estas situaciones y corrigen el codigo generado Eliminacion EditarExisten tecnicas de optimizacion de software comunmente llevadas a cabo por un compilador optimizador para eliminar el codigo redundante del codigo fuente La mas comun es la eliminacion de codigo muerto Vease tambien EditarCodigo inflado Codigo muerto Codigo inalcanzableReferencias Editar Debray S K Evans W Muth R and De Sutter B 2000 Compiler techniques for code compaction ACM Trans Program Lang Syst 22 2 Mar 2000 378 415 Datos Q1251793 Obtenido de https es wikipedia org w index php title Codigo redundante amp oldid 129040187, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos