168301. lajstromszámú szabadalom • Helyiérték helyesbítő kapcsolási elrendezés lebegőpontos számok gyorsított osztására alkalmasan kialakított adatfeldolgozó berendezésekhez

168301 3 4 számú ismétlése - vagyis a megfelelő hosszúságú hányados előállítása - megtörtént-e. Ezután kerül sor az eredmény normalizálására, illetve - amennyiben szükséges - az utolsó részmara­déktól függően az esetleges kerekítésre. A művelet meggyorsítására a következő eljárások ismeretesek: 1. Az operandusok és a részmaradék normalizálása, esetleg bináris normalizálása. 2. A részmaradék előjelének gyors képzése. 3. A negatív részmaradék kezelése („nem helyre­állító módszer"), 4. Több hányadosbit előre becslése az osztó többszöröseinek felhasználásával (ennek az igen haté­kony módszernek több változata ismert). Ha a számitógép, illetve annak műveletvégző egy­sége 1 bitnyi információnál hosszabb karaktert kezel információegységként (pl. bitből álló hexadecimális karaktert), bármely normalizált operandus, ill. a normalizált végeredmény vezető nullákat tartalmaz­hat. A találmány alapja az a felismerés, hogy az osztó vezető nulláinak elhagyása (normalizálás) esetén a normalizálási lépések száma, a részműveleti lépések száma és a hányadosbitek tartalma (van-e nullától eltérő bit) alapján olyan logikai összefüggés állítható fel, mely a műveletvégzés egy korai szakaszában lehetővé teszi a végeredményre vonatkozó olyan döntés kialakítását, melynek alapján az osztási műve­let elvégzéséhez szükséges lépésszám korrigálható, úgy hogy a végeredmény vezető nulláinak egyrészét nem kell kiszámítani, illetőleg a végeredmény utólagos normalizálása szükségtelenné válik. A döntési tábla alapul vételével mindössze négy egyszerű áramkörrel kell kiegészíteni az adatfeldolgozó berendezést e döntés kialakításához és a szükséges beavatkozás előidézéséhez. A folyamat leírásánál ismert módon normalizált operandusokból indulunk ki. Az információegység, melyre vonatkozóan az operandusok normalizáltak, n bitet tartalmaz, ahol n egész szám és n > 1. Az operandusok mantisszájának értéke így 1 és 1/2R közé esik. Első lépésként az osztó vezető nulláinak számát, mely 0-tól (n-l)-ig terjedhet, feljegyezzük (tároljuk). Legyen e szám: i. Szorozzuk meg az osztót 2'-vel (léptessük i hellyel balra). Az osztási műveletet az így binárisan normalizált osztóval kezdjük elvégezni. A hányados bitjeinek kiszámítását lépésenként végez­zük, úgy hogy lépésenként valamely ismert eljárással egy vagy több bit értékét határozzuk meg és egyben a lépésszámregiszterben (+1 vagy -1 hozzászámlálásá­val) tároljuk a megtett lépések számát. Amikor a kiszámított hányadosbitek száma eléri az n értéket, a lépésszámregiszter tartalmát a már kiszámított hányadosbitek értékének függvényében korrigáljuk. A korrekciónál a kiszámított n darab hányados­bitből az osztó elhagyott - 0 értékű - bitjeinek i darabszámától függően - áramkör segítségével - a magasabb helyiértéktől az alacsonyabb felé haladva összesen j = i + 1 bitet figyelünk. Attól függően, hogy a figyelt hányados-tartomány­ban levő bitek közt van-e logikai 1 értékű, vagy valamennyi figyelt bit értéke: 0, továbbá i értékének figyelembevételével, a lépésszámregiszterben az elvég­zett lépések számát az I. táblázat szerinti m értékkel módosítjuk. A módosítást az éppen soron következő műveleti lépéssel egyidőben, a lépésszám-regiszter tartalmához való hozzászámlálás helyett végezzük el. I. táblázat m 10 i j «——— f=0 f# 0 0 1 0 +n 1 2-1 +n-l 15 • • • • • n-1 n -(n-1) +1 20 A táblázatban használt jelölések a következők: n - a számítógép által alkalmazott információegység bitjeinek száma i - az osztó mantisszája vezető nulláinak számát 25 tartalmazó regiszter tartalma j - a hányadost figyelő áramkör által figyelt bitek száma f — a hányadost figyelő áramkör kimenetének logikai értéke, mely f = 0, ha minden figyelt bit értéke 0 39 és f^=0, ha a figyelt bitek legalább egyikének értéke 1 m —az elvégzendő helyesbítés lépésszáma Az áramkörrel figyelt hányadosbitek nem szük­ségszerűen a végeredmény legmagasabb helyiérté-35 kű bitjei; ezek a műveletvégzés során legmagasabb helyiértéken álló bitek, melyek elé - ha voltak vezető nullák, vagy valamelyik művelet átvitelt eredményez - vezető nulla (nullák) kerül(nek) a végeredménybe, mint legmagasabb helyiértékű bit(ek). A fenti I. 40 táblázat arra az esetre érvényes, ha — a hányados kiszámítása egy bitenként történik és így a normális esetben az elvégzett lépések számát egyenként növeljük vagy - a hányados kiszámítása k bitenként történik és 45 az elvégzett lépések számát k-val növeljük. Ha a hányados kiszámítását k bitenként végezzük, de az elvégzett lépések számát egyenként növeljük, a kor­rekciós táblába m értéke helyett az m/k tört egész­számra felfelé kerekített értéke kerül (pl.: 1/2 helyett 50 1,-1/2 helyett 0). Ha a korrekció pozitív irányú, vagyis a megtett lépések számát növeljük és így a még elvégzendő lépések számát eggyel csökkentjük, a lebegőpontos szám karakterisztikájának értékét is 1-el növelni kell. 55 A táblázat azon fele ugyanis, ahol a figyelt hányados­tartományban 1 értékű bit van, azt a végeredmény­tartományt jelenti, ahol a hányados értéke > 1. E korrekciós lépés a hányados kiszámítási folya­mattal párhuzamosan megy végbe, annak normál 60 menetét nem késlelteti, nem befolyásolja. A korrek­ciós lépés után az eljárás a szokásos, ismert úton folytatódik tovább a további lépések számlálásával és tart mindaddig, amig a lépésszámregiszter nem jelzi, hogy a megfelelő hosszúságú hányados rendelkezésre 65 áll. Ez a hányados - az esetleg szükséges, részmara-2

Next

/
Thumbnails
Contents