-->

dimanche 3 février 2019

Traitement des nombres entiers

Nombre entier (int, entier signé sur 16 bits)

Les nombres entiers de type « INT » sont codés sur 16 bits, soit un Word.

Photo

Le bit de poids fort (bit 15) est utilisé pour indiquer si le nombre est positif ou négatif.
Si le bit 15 = 0 => nombre positif
Si le bit 15 = 1 => nombre négatif

Photo

Remarque : le nombre négatif est obtenu en appliquant la méthode du complément à 2
Exemple d’utilisation avec un nombre entier positif:

Photo

Exemple d’utilisation d’un nombre entier positif:

Photo

Nombre entier le plus grand
Positif              :           0111 1111 1111 1111,          soit 7FFF,     soit + 32767
Négatif             :          1111 1111 1111 1111,          soit 8000,     soit – 32767




 Nombre double entier (DINT, entier signé sur 32bits)


Les nombres entiers double de type « DINT » sont codés sur 32 bits, soit un Double Word.

Exemple : 12375610  =>


Photo

Le bit de poids fort (bit 31) est utilisé pour indiquer si le nombre est positif ou négatif.
Si le bit 31 = 0 => nombre positif
Si le bit 31 = 1 => nombre négatif

Exemple : - 12375610  =>


Photo

Remarque : le nombre négatif est obtenu en appliquant la méthode du complément à 2
Exemple d’utilisation avec un nombre entier positif:

Photo

Charge la valeur 123756 dans la mémoire MD10
Exemple d’utilisation d’un nombre entier positif:

Photo

Charge la valeur - 123756 dans la mémoire MD14
Nombre double entier le plus grand
Positif       : 0111 1111 1111 1111 1111 1111 1111 1111, soit 7FFF FFFF, soit +214748364710
Négatif      : 1000 0000 0000 0000 0000 0000 0000 0000, soit 8000 0000, soit -214748364810


Transfert d'un nombre move

L’opération MOVE permet de copier un nombre. Il est possible de copier une entrée vers une sortie, une entrée vers une mémoire, une mémoire vers une sortie ou encore une mémoire vers une mémoire.

Transfert d’un byte
Exemple : IB0 vers MB10

Photo

Transfert d’un entier
Exemple : IW0 vers MW10

Photo

Transfert d’un double entier
Exemple : ID0 vers MD10

Photo

Transfert de nombre ayant des tailles différentes
Il est possible de copier des nombres ayant des tailles différentes pour autant que la mémoire de destination soit égale ou plus grande

Exemples :

Photo

Remarque : Il n’est pas possible de copier un nombre d’une taille plus grande que la mémoire de destination.
Exemple : Le transfert de IW0 => MB10 n’est par exemple pas possible !


Photo

Opérations de base sur les nombres entiers ou double entier

Addition :  ADD

Photo

Résultat = Nombre 1 + Nombre 2

 Soustraction : SUB

Photo

Résultat = Nombre 1 - Nombre 2

Multiplication : Mul

Photo

Résultat = Nombre 1  x  Nombre 2

Division : Div

Photo

Résultat = Nombre 1 : Nombre 2

 Choix du format du nombreAprès avoir choisi l’opération de base, le format du nombre doit être déterminé :
- « Int » pour un entier
- « DInt »  pour un double entier


Photo

Conversion binaire ó BCD

Le format du nombre, entier ou double entier va définir le format du nombre de sortie
Conversion binaire entier ó BCD

Photo
Conversion entier => BCD
Photo
Conversion BCD => entier

Conversion binaire double entier ó BCD

Photo
Conversion double entier => BCD

Photo
Conversion BCD => double entier

Conversion Nombre entier en double entier

Parfois il est nécessaire de « transformer » un nombre entier en un nombre double entier. 

Par exemple pour le comparer avec un autre nombre au format double entier.

Photo
Conversion entier => double entier

Opération de comparaison sur les nombres entier 
ou double entier

Les opérations de comparaisons permettent de comparer 2 nombres entier ou double entier.
Le résultat est binaire (0 ou 1).


Exemple :

Photo

Si « Nombre 1 » > « Nombre 2 » la sortie « Etat » passe à « 1 », sinon elle reste à « 0 »

Opération de comparaison possible :

Photo

La sélection du format du nombre et du genre de comparaison peut être définie ainsi:

Photo
Sélection du format
Photo
Sélection de la comparaison

NEXT ARTICLE Next Post
PREVIOUS ARTICLE Previous Post
Disqus
Blogger
حدد نظام التعليق الذى تريده ... وأترك تعليقك

Aucun commentaire

NEXT ARTICLE Next Post
PREVIOUS ARTICLE Previous Post
 

About

-->