Langage de programmation
Chaque appareil informatique a un ensemble d'instructions qui peuvent être utilisées pour effectuer des opérations. Les instructions permettent d'effectuer des calculs arithmétiques ou logiques, déplacer ou copier des données, ou bifurquer vers l'exécution d'autres instructions. Ces instructions sont enregistrées sous forme de séquences de bits, où chaque séquence correspond au code de l'opération à effectuer et aux opérandes, c'est-à-dire aux données concernées ; c'est le langage machine.
Analyse des logiciels malveillants
Un <a href="Langage%20machine">opcode</a> (pour "operational code") est une sous partie d'une instruction en langage machine qui identifie les opérations qui sont exécutées. Plus précisément, un programme est défini par une série d'instructions assembleur ordonnés. Une instruction est une paire composée d'un code opérationnel et d'une opérande ou d'une liste d'opérandes. Par exemple : mov ebx ebx add eax 1 xor eax eax call sub_401BCD Les segments d'instruction peuvent souvent montrer les fonctionnalités d'un programme. Des études ont montré qu'en pratique, les échantillons d'un logiciel malveillant dérivé du même code source, ou qui proviennent d'une même famille de logiciels malveillants partagent souvent un grand nombre de blocs ou segments d'instructions en commun.