O formato de arquivo Motorola S-Record, frequentemente abreviado como SREC ou S19, é um formato de arquivo baseado em texto usado para representar dados binários, principalmente para programação de microcontroladores, EPROMs e outros sistemas embarcados. É um formato legível por humanos, tornando-o relativamente fácil de inspecionar e depurar. Cada linha em um arquivo SREC representa um registro, começando com o caractere 'S' seguido por um código de tipo (S0, S1, S2, S3, S5, S7, S8, S9), uma contagem de bytes, um endereço, os bytes de dados e um checksum (soma de verificação). O código de tipo indica a finalidade do registro: S0 para informações de cabeçalho (header), S1/S2/S3 para registros de dados com tamanhos de endereço variados (16 bits, 24 bits e 32 bits, respectivamente), S5 para um registro de contagem (obsoleto), e S7/S8/S9 para registros de terminação com os tamanhos de endereço correspondentes. Os bytes de dados contêm os dados binários reais a serem programados no dispositivo alvo. O checksum garante a integridade dos dados durante a transmissão ou armazenamento. Os arquivos SREC são amplamente suportados por várias ferramentas de programação, compiladores e depuradores usados no desenvolvimento de sistemas embarcados. A simplicidade do formato e sua ampla adoção o tornaram um padrão para transferência de dados binários para dispositivos embarcados.