El formato de archivo Motorola S-Record, a menudo abreviado como SREC o S19, es un formato de archivo basado en texto utilizado para representar datos binarios, principalmente para la programación de microcontroladores, EPROMs y otros sistemas embebidos. Es un formato legible por humanos, lo que facilita su inspección y depuración. Cada línea en un archivo SREC representa un registro, comenzando con el carácter 'S' seguido de un código de tipo (S0, S1, S2, S3, S5, S7, S8, S9), un recuento de bytes, una dirección, los bytes de datos y una suma de verificación (checksum). El código de tipo indica el propósito del registro: S0 para información de cabecera (header), S1/S2/S3 para registros de datos con tamaños de dirección variables (16 bits, 24 bits y 32 bits respectivamente), S5 para un registro de conteo (obsoleto), y S7/S8/S9 para registros de terminación con los tamaños de dirección correspondientes. Los bytes de datos contienen la información binaria real que se va a programar en el dispositivo objetivo. La suma de verificación asegura la integridad de los datos durante la transmisión o el almacenamiento. Los archivos SREC son ampliamente compatibles con diversas herramientas de programación, compiladores y depuradores utilizados en el desarrollo de sistemas embebidos. La simplicidad del formato y su adopción generalizada lo han convertido en un estándar para transferir datos binarios a dispositivos embebidos.