Thursday, 19 January 2017

Méthode Répétée Soustraction Binaire

Remarque: Le bit le plus significatif (à gauche) indique le signe de l'entier, donc il est parfois appelé le bit de signe. Si le bit de signe est nul, alors le nombre est supérieur ou égal à zéro ou positif. Si le bit de signe est un, alors le nombre est inférieur à zéro ou négatif. Pour calculer le complément 2s d'un entier, inversez l'équivalent binaire du nombre en changeant tous les zéros en zéros et tous les zéros en un (également appelés complément 1), puis ajoutez un. 0001 0001 (binaire 17) 1110 1111 (twos complément -17) 1110 1110 (Invert bits) 1110 1110 0000 0001 1110 1111 (Add 1) Twos complément complémentaire suit les mêmes règles que l'addition binaire. La soustraction de deux compléments est l'addition binaire du minuend au complément 2s du subtrahend (ajouter un nombre négatif est le même que soustraire un complément positif). La multiplication de deux compléments suit les mêmes règles que la multiplication binaire. 0000 0100 Deux fois la division du complément est répétée 2s compléter la soustraction. Le complément 2s du diviseur est calculé, puis ajouté au dividende. Pour le cycle de soustraction suivant, le quotient remplace le dividende. Cela se répète jusqu'à ce que le quotient soit trop petit pour la soustraction ou soit nul, puis il devient le reste. La réponse finale est le total des cycles de soustraction plus le reste. 7 diviser 3 2 reste 1 0000 0000 0000 0001 Représentation de la Magnitude des Signes Une autre méthode de représentation des nombres négatifs est la grandeur des signes. Sign-magnitude représentation utilise également le bit le plus significatif du nombre d'indiquer le signe. Un nombre négatif est la représentation binaire 7 bits du nombre positif avec le bit le plus significatif mis à un. Les inconvénients de l'utilisation de cette méthode pour le calcul arithmétique sont qu'un ensemble différent de règles sont nécessaires et que zéro peut avoir deux représentations (0, 0000 0000 et -0, 1000 0000). Représentation binaire offset Une troisième méthode pour représenter des nombres signés est décalée binaire. Commencer à calculer un code binaire offset en affectant la moitié du plus grand nombre possible à la valeur zéro. Un entier positif est la valeur absolue ajoutée au nombre zéro et un entier négatif est soustrait. Offset binaire est populaire dans A D et D A conversions, mais il est encore maladroit pour le calcul arithmétique. Par exemple, Valeur la plus grande pour l'entier 8 bits 2 8 256 Valeur de zéro binaire de décalage 256 diviser 2 128 (décimal) 1000 0000 (binaire) 1000 0000 (décalage binaire 0) 0001 0110 (binaire 22) 1001 0110 (décalage binaire 22) Calculatrice (Vous voulez calculer avec des opérandes décimales Vous devez les convertir en premier.) À propos de la calculatrice binaire Il s'agit d'une calculatrice binaire de précision arbitraire. Il peut ajouter. soustraire. multiplier. Ou diviser deux nombres binaires. Il peut fonctionner sur de très grands nombres entiers et de très petites valeurs fractionnaires 8212 et des combinaisons des deux. Cette calculatrice est, par sa conception, très simple. Vous pouvez l'utiliser pour explorer les nombres binaires sous leur forme la plus élémentaire. Il fonctionne sur des numéros binaires ldquopurerdquo, pas des formats numériques d'ordinateur comme two8217s complément ou IEEE binaire en virgule flottante. Comment utiliser le calculateur binaire Entrez un opérande dans chaque boîte. Chaque opérande doit être un nombre positif ou négatif sans virgules ni espaces, non exprimé en fraction, et non en notation scientifique. Les valeurs fractionnelles sont indiquées par un point de base (lsquo. rsquo, non lsquo, rsquo), et les nombres négatifs sont précédés d'un signe moins (ldquo-rdquo). Sélectionnez une opération (, 8211,). Modifiez le nombre de bits que vous souhaitez afficher dans le résultat binaire, s'il est différent de la valeur par défaut (cela s'applique uniquement à la division et seulement lorsque la réponse a une partie fractionnaire infinie). Cliquez sur lsquoCalculatersquo pour effectuer l'opération. Cliquez sur lsquoClearrsquo pour réinitialiser le formulaire et démarrer à zéro. Si vous voulez changer un opérande, tapez simplement sur le numéro d'origine et cliquez sur lsquoCalculatersquo 8212, il n'est pas nécessaire de cliquer sur lsquoClearrsquo en premier. De même, vous pouvez changer l'opérateur et conserver les opérandes en l'état. Outre le résultat de l'opération, le nombre de chiffres dans les opérandes et le résultat est affiché. Par exemple, lors du calcul 1.1101 111.100011 1101.1010110111, la boîte ldquoNum Digitsrdquo affiche ldquo1.4 3.6 4.10rdquo. Cela signifie que l'opérande 1 a un chiffre dans sa partie entière et quatre chiffres dans sa partie fractionnaire, l'opérande 2 a trois chiffres dans sa partie entière et six chiffres dans sa partie fractionnaire et le résultat a quatre chiffres dans sa partie entière et dix chiffres Dans sa partie fractionnaire. L'addition, la soustraction et la multiplication produisent toujours un résultat fini, mais la division peut (en fait, dans la plupart des cas) produire une valeur fractionnaire infinie (répétitive). Les résultats infinis sont tronqués 8212 non arrondis 8212 au nombre spécifié de bits. Des résultats infinis sont notés avec une ellipse (8230) ajoutée au résultat, et avec un symbole lsquo8734rsquo comme le nombre de chiffres fractionnaires. Pour les divisions qui représentent des fractions dyadiques. Le résultat sera fini. Et affichée en toute précision 8212 indépendamment du réglage du nombre de bits fractionnaires. Par exemple, 1 1010 à 24 bits fractionnaires est 0,0001100110011001100110018230, avec ldquoNum Digitsrdquo ldquo1.0 4.0 0.8734rdquo 11 100 0.11, avec ldquoNum Digitsrdquo ldquo2.0 3.0 0.2rdquo. Utilisation de la calculatrice pour explorer l'arithmétique à virgule flottante Bien que cette calculatrice implémente l'arithmétique binaire pure, vous pouvez l'utiliser pour explorer l'arithmétique à virgule flottante. Par exemple, disons que vous vouliez savoir pourquoi, en utilisant l'arithmétique à virgule flottante binaire double précision IEEE, 129.95 10 1299.5, mais 129.95 100 12994.999999999998181010596454143524169921875. Il existe deux sources d'imprécision dans un tel calcul: conversion décimale en virgule flottante. Et arithmétique binaire de précision limitée. La conversion décimale en virgule flottante introduit l'inexactitude car un opérande décimal peut ne pas avoir un équivalent à virgule flottante équivalente. L'arithmétique binaire de précision limitée introduit l'inexactitude, car un calcul binaire peut produire plus de bits que ceux qui peuvent être stockés. Dans ces cas, l'arrondissement se produit. 10 et 100 (les deux décimales) ont des équivalents à virgule flottante exacte (1010 et 1100100, respectivement), mais 129,95 n'a qu'une représentation approximative. Mon convertisseur décimal vers binaire vous dira que, en purement binaire, 129.95 a une fraction répétée infinie: 10000001.111100110011001100110011001100110011001100110 011 8230 Arrondi aux 53 bits de double précision, it8217s qui est 129.94999999999998863131622783839702606201171875 en décimal. 129,95 10 129,95 10 est calculé comme étant égal à 10100010011.011111111111111111111111111111111111111111 1 Il s'agit de 54 bits significatifs de long, de sorte que quand it8217s arrondi à 53 bits, il devient 129,95 100 129,95 100 est calculé comme ce qui équivaut à 11001011000010.111111111111111111111111111111111111111 011 Cela est 56 bits significatifs longs, 53 bits, il devient ce qui équivaut à 12994.999999999998181010596454143524169921875 Discussion Pour travailler à travers cet exemple, vous deviez agir comme un ordinateur, aussi fastidieux que cela était. Tout d'abord, il fallait convertir les opérandes en binaire, les arrondir si nécessaire, alors il fallait les multiplier et arrondir le résultat. Pour des raisons pratiques, la taille des entrées 8212 et le nombre de bits fractionnaires dans un résultat de division infini 8212 est limitée. Si vous dépassez ces limites, un message d'erreur s'affiche. Mais dans ces limites, tous les résultats seront précis (dans le cas de la division, les résultats sont exacts à travers la position troncée des bits).


No comments:

Post a Comment