Offset (informatique)
Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Offset est un terme anglais qui en informatique désigne une adresse relative. L'offset est une valeur entière représentant le déplacement en mémoire, par rapport à une adresse de référence, nécessaire pour atteindre une autre adresse (Les adresses forment une notion importante en communication, elles permettent à une entité de s'adresser à une autre parmi un ensemble d'entités. Pour qu'il n'y ait pas...). Autrement dit, l'offset est la distance séparant deux emplacements mémoire (D'une manière générale, la mémoire est le stockage de l'information. C'est aussi le souvenir d'une information.).

Utilisation

Ainsi, l'offset est utilisé dans la manipulation des tableaux, ou de tout (Le tout compris comme ensemble de ce qui existe est souvent interprété comme le monde ou l'univers.) autres structures de données (Dans les technologies de l'information (TI), une donnée est une description élémentaire, souvent codée, d'une chose, d'une transaction d'affaire,...) contiguës en mémoire.

L'unité utilisée pour calculer un offset est la plupart du temps (Le temps est un concept développé par l'être humain pour appréhender le changement dans le monde.) la taille de l'élement le plus petit adressable directement ; il s'agit dans la plupart des architectures (Architectures est une série documentaire proposée par Frédéric Campain et Richard Copans, diffusé sur Arte depuis 1995.) de l'octet. La position exacte d'un objet (De manière générale, le mot objet (du latin objectum, 1361) désigne une entité définie dans un espace à trois dimensions, qui a une fonction précise, et qui peut être désigné par une étiquette verbale. Il est défini par les...) en mémoire peut se calculer simplement par la formule :

 
 adresse absolue (L'absolue est un extrait obtenu à partir d’une concrète ou d’un résinoïde par extraction à l’éthanol à température ambiante ou plus généralement par chauffe, puis par...) = adresse de base + offset * taille d'un élément 
 

Ainsi, dans la structure suivante (en C#) :

 
 struct exemple { 
 Byte  a; 
 Int16 b; 
 Int32 c; 
 } 
 

l'offset de l'élément b sera de 1 octet (taille de l'élément a) ; l'offset de l'élément c sera 3 octets (taille de a plus taille de b).

Offset dans un tableau (Tableau peut avoir plusieurs sens suivant le contexte employé :)

Dans le cas d'une position relative au sein d'un tableau, l'unité de calcul sera la taille des éléments du tableau. Ainsi, le nième élément d'un tableau sera toujours à l'offset n-1 quels que soient les éléments du tableau. Le terme anglais index désigne le numéro représentant l'élément. Il correspond exactement à l'offset dans le cas de langages tels que C. Dans d'autres langages, le premier élément ne portant pas nécessairement le numéro 0, il peut exister un décalage entre l'index d'un élément et son offset.

Dans un tableau défini en Visual Basic (En programmation, BASIC est un acronyme pour Beginner's All-purpose Symbolic Instruction Code. qui désigne une famille de langages de programmations de haut niveau.) par :

 
 Dim tableau(2 To 5) As Integer 
 

ou en Pascal par :

 
 tableau: array[2..5] of Integer 
 

l'index du troisième élément sera 4, tandis que son offset sera 2.

Page générée en 0.057 seconde(s) - site hébergé chez Amen
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
Ce site est édité par Techno-Science.net - A propos - Informations légales
Partenaire: HD-Numérique