Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> MATLAB

MATLAB - Números: Tipos, Almacenamiento y Conversión

MATLAB soporta diversas clases numéricas: enteros con y sin signo, y precisión simple y doble para punto flotante. Por defecto, almacena todos los valores numéricos como double precision (doble precisión).

Puedes elegir almacenar números como enteros o single precision (precisión simple). Todos los tipos numéricos soportan operaciones básicas de arrays y matemáticas.

Conversión a Tipos Numéricos

MATLAB provee funciones para convertir entre tipos:

FunciónPropósito
doubleConvierte a doble precisión
singleConvierte a precisión simple
int8Convierte a entero con signo de 8 bits
int16Convierte a entero con signo de 16 bits
int32Convierte a entero con signo de 32 bits
int64Convierte a entero con signo de 64 bits
uint8Convierte a entero sin signo de 8 bits
uint16Convierte a entero sin signo de 16 bits
uint32Convierte a entero sin signo de 32 bits
uint64Convierte a entero sin signo de 64 bits

Ejemplo de Conversión

x = single([5.32 3.47 6.28]) .* 7.5
x = double([5.32 3.47 6.28]) .* 7.5
x = int8([5.32 3.47 6.28]) .* 7.5
x = int16([5.32 3.47 6.28]) .* 7.5
x = int32([5.32 3.47 6.28]) .* 7.5
x = int64([5.32 3.47 6.28]) .* 7.5

Los tipos enteros redondean el resultado (38, 23, 45), mientras que los de punto flotante mantienen decimales.

Valores Mínimos y Máximos de Enteros

Las funciones intmax() y intmin() devuelven los límites representables para cada tipo entero.

intmax('int8')   % 127
intmin('int8')   % -128
intmax('uint16') % 65535

Ejemplo: Rangos de Tipos Enteros

str = 'El rango para int8 es:\n\t%d a %d';
sprintf(str, intmin('int8'), intmax('int8'))
% Repite para int16, int32, int64, uint8, uint16, uint32, uint64

Nota: En versiones antiguas, intmax('int64') podía mostrar 0 por limitaciones de visualización.

Valores Mínimos y Máximos de Punto Flotante

Las funciones realmax() y realmin() devuelven los límites para single y double.

Ejemplo

str = 'El rango para single es:\n\t%g a %g y\n\t %g a %g';
sprintf(str, -realmax('single'), -realmin('single'), realmin('single'), realmax('single'))
str = 'El rango para double es:\n\t%g a %g y\n\t %g a %g';
sprintf(str, -realmax('double'), -realmin('double'), realmin('double'), realmax('double'))

Resultados típicos:

MATLAB

  1. Números vs numeración: comprender la distinción y su impacto práctico
  2. MATLAB: Visión General del Entorno Líder en Computación Numérica
  3. Variables en MATLAB: Conceptos Básicos y Ejemplos Prácticos
  4. Comandos Esenciales de MATLAB para Computación Eficiente
  5. Tipos de Datos en MATLAB: Guía Completa de Conversión y Determinación
  6. Operadores en MATLAB: Guía Completa de Aritméticos, Relacionales, Lógicos y Bitwise
  7. Matrices en MATLAB: Creación, Referenciación y Manipulación de Datos
  8. MATLAB: Dominando Arrays Multidimensionales y Especiales
  9. Dominando la Notación de Dos Puntos en MATLAB: Vectores e Iteraciones
  10. Dominando Strings en MATLAB: Creación, Manipulación y Funciones
  11. Funciones en MATLAB: Definición, Workspace, Entradas y Salidas