Problemas aritméticos
Este artículo o sección necesita referencias que aparezcan en una publicación acreditada. Busca fuentes: «Problemas aritméticos» – noticias · libros · académico · imágenes Puedes avisar al redactor principal pegando lo siguiente en su página de discusión: {{sust:Aviso referencias|Problemas aritméticos}} ~~~~ Este aviso fue puesto el 29 de mayo de 2024. |
Un problema aritmético (dentro de la computación), se denomina al desbordamiento de datos debido a la sobre ocupación (overflow) de la memoria disponible como tipos de datos.
Supongamos el siguiente trozo de código de un programa en C:
#include <stdio.h> int main() { int x, y; x = 32000; y = 7; printf("%d",x*y); }
Este sería un caso de desbordamiento de entero, ya que para el lenguaje C, se define el tipo de dato entero dentro del rango de -32764 a +32764, siendo el resultado de esta multiplicación, fuera del rango de los enteros.
También en el lenguaje Delphi de Borland podría darse el siguiente caso.
function Multiplicar(X, Y: Integer): Integer; begin try Result := X * (999999999 * Y); except Result := 0; end; end;
Al utilizar esta función, aunque no da ningún error de diseño, compilación o de ejecución si devuelve datos erróneos que pueden causar problemas graves dentro del procesamiento de los datos en dicha aplicación.
Por lo general, este tipo de errores producen cálculos erróneos y hacen que la vulnerabilidad del programa quede manifiesta.
Véase también
- Error de software
- Datos: Q9062952