PL108594B1 - Method and apparatus for dividing two numbers - Google Patents

Method and apparatus for dividing two numbers Download PDF

Info

Publication number
PL108594B1
PL108594B1 PL1977199419A PL19941977A PL108594B1 PL 108594 B1 PL108594 B1 PL 108594B1 PL 1977199419 A PL1977199419 A PL 1977199419A PL 19941977 A PL19941977 A PL 19941977A PL 108594 B1 PL108594 B1 PL 108594B1
Authority
PL
Poland
Prior art keywords
register
remainder
code
positions
output
Prior art date
Application number
PL1977199419A
Other languages
English (en)
Other versions
PL199419A1 (pl
Inventor
Valerij F Gusev
Gennadij N Ivanov
Vladimir J Kontarev
Genrich I Krengel
Gleb M Persov
Vjaceslav J Kremlev
Mansur Z Sagivaleev
Jurij I Scetinin
Azat U Jarmuchametov
Original Assignee
Gusev Valerij Fsu
Ivanov Gennadij Nsu
Kontarev Vladimir Yasu
Kremlev Vyacheslav Yasu
Krengel Genrikh Su
Persov Gleb Msu
Shagivaleev Mansur Zsu
Shchetinin Yurij Su
Yarmukhametov Azat Usu
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gusev Valerij Fsu, Ivanov Gennadij Nsu, Kontarev Vladimir Yasu, Kremlev Vyacheslav Yasu, Krengel Genrikh Su, Persov Gleb Msu, Shagivaleev Mansur Zsu, Shchetinin Yurij Su, Yarmukhametov Azat Usu filed Critical Gusev Valerij Fsu
Publication of PL199419A1 publication Critical patent/PL199419A1/pl
Publication of PL108594B1 publication Critical patent/PL108594B1/pl

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/535Dividing only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/535Indexing scheme relating to groups G06F7/535 - G06F7/5375
    • G06F2207/5353Restoring division

Description

Opis patentowy opublikowano: 31.12.1980 108594 Int. Cl.2 G06F 7/39 Twórcy wynalazku: Valerij Fedorovió Gusev, Gennadij Nikolaevic Ivanov, Vladi- mir Jakovlevic Kontarev, Genrich Isaevic Krengel, Gleb Mar¬ kovic Persov, Vjaceslav Jakovlevic Kremlev, Mansur Zakiro- vic Sagivaleev, Jurij Ivanovic Scetinin, Azat Usmanovic Jar- muchametov Uprawniony z patentu: Valerij Fedorovic Gusev, Kazan; Gennadij Nikolaevic Iva- nov, Kazan; Genrich Isaevic Krengel, Kazan; Gleb Marko- kovic Persov, Kazan; Mansur Zakirovic Sagivaleev, Kazan; Azat Usmanoyic Jarmuchametow, Kazan; Vladimir Jako- vlevic Kontarev, Moskwa; Vjaceslav Jakovlevic Kremlev, Moskwa; Jurij Ivanovic* Scetinin, Moskwa {Zwiazek Socja- listycznych RepublikRadzieckich) Sposób i urzadzenie do dzielenia dwóch liczb Wynalazek odnosi sie do dziedziny maszyn liczacych, a bardziej dokladnie — do sposobów dzielenia dwóch liczb i urzadzen do wykonywania tego sposobu i moze byc zastosowany przy realizacji szybkodzialajacych elek¬ tronicznych cyfrowych maszyn liczacych.Znany jest sposób dzielenia dwóch liczb, polegajacy na tym, ze liczby przeksztalca sie w kod dwójkowy oraz okresla sie kod ilorazu poprzez kolejne odejmowanie kodu dzielnika od kodu dzielnej (reszty). Cykl dzielenia wy¬ konywany jest w ciagu dwóch taktów maszynowych.W pierwszym z nich realizowane jest zsumowanie reszty z bezposrednim dodatkowym kodem dzielnika i prze¬ suniecie w lewo o jedna pozycje nowej reszty. Przy tym znak nowej reszty uzyskiwany jest z ukladu przesuwu sumatora i w kodzie odwrotnym podawany do ukladów wyzwalajacych przepelnienia, stanowiac kolejna pozycje ilorazu. Podczas drugiego taktu odbywa sie analiza znaku uzyskanej reszty w celu okreslenia tego, w jakim kodzie, bezposrednim (prostym) lub dodatkowym, dzielnik po¬ winien zostac doprowadzony do wejscia sumatora w nas¬ tepnym cyklu dzielenia.Znane jest urzadzenie przeznaczone do dzielenia dwóch liczb {patrz Flores „Organizacja maszyn liczacych", wyd. „Mir" 1972 r, str. 311—313). Urzadzenie to za¬ wiera blok arytmetyczny, którego wejscia informacyjne, poprzez szyny informacyjne podlaczone sa do wyjsc in¬ formacyjnych rejestru dzielnej (reszty) i rejestru dziel¬ nika. Pierwsze wyjscie bloku arytmetycznego polaczone jest z wejsciami informacyjnymi rejestru dzielnej (resz¬ ty) i rejestru dzielnika, a drugie wyjscie polaczone jest 25 30 z wejsciem bloku mikroprogramowego sterowania urza¬ dzeniem przeznaczonym do dzielenia, który polaczony jest z licznikiem i podlaczony do wejsc sterujacych re¬ jestru reszty, rejestru dzielnika, rejestru ilorazu i do wejscia dodatkowego rejestru ilorazu. Dodatkowy rejestr ilo¬ razu swoim wyjsciem podlaczony jest do wejscia informa¬ cyjnego rejestru ilorazu.Szybkosc dzielenia dwóch liczb na znanym urzadzeniu okreslona jest przez zrealizowany w nim sposób dziele¬ nia i równa sie jednej pozycji ilorazu w ciagu dwóch tak¬ tów maszynowych. Taka szybkosc dzialania jest niewystar¬ czajaca dla rozwiazania wielu zadan.Celem niniejszego wynalazku jest zwiekszenie szyb¬ kosci dzielenia maszynowego dwóch liczb.Glównym zadaniem wynalazku jest zaprojektowanie i wykonanie takiego sposobu dzielenia dwóch liczb oraz urzadzenia do wykonywania tego sposobu, które pozwo¬ lilyby w kazdym cyklu dzielenia w ciagu dwóch taktów maszynowych uzyskac dwie pozycje dwójkowe ilorazu.Postawione zadanie zostalo rozwiazane w wyniku za¬ projektowania sposobu dzielenia dwóch liczb, który to sposób polega na tym, ze liczby przeksztalca sie w kod dwójkowy i okresla sie kod ilorazu poprzez kolejne odej¬ mowanie kodu dzielnika od kodu dzielnej. Wedlug wy¬ nalazku przed odejmowaniem kodu dzielnika od kodu reszty ksztaltuje sie kod adresu trzech pozycji poprzez wyznaczenie polozenia najbardziej znaczacej pozycji w trzech bardziej znaczacych pozyqach dzielnika, wedlug uksztaltowanego adresu wydziela sie trzy pozycje reszty: pozycje, odpowiadajaca najbardziej znaczacej pozyqi 108 594108 594 kodu dzielnika i dwie sasiednie bardziej znaczace pozy¬ je, wydzielone trzy pozyq'e reszty analizuje sie i w za¬ leznosci od wyniku analizy wydzielonych trzech pozycji reszty odejmuje sie z kodu reszty kod albo dzielnika, albo kod podwojonego dzielnika, albo kod potrojonego dziel¬ nika, otrzymujac kolejne dwie pozycje kodu ilorazu.Zadanie to rozwiazywane jest równiez i dzieki temu, ze urzadzenie przeznaczone do dzielenia dwóch liczb, zawierajace blok arytmetyczny, którego wejscia informa¬ cyjne poprzez szyny informacyjne podlaczone sa do wyjsc informacyjnych rejestru dzielnej (reszty) i rejestru dziel¬ nika, przy czym pierwsze wyjscie polaczone jest z wej¬ sciami informacyjnymi rejestru dzielnej (reszty) i re¬ jestru dzielnika, a drugie wyjscie polaczone jest z wej- scienx Jsloku. .jnjJgpp£C£rjamowego sterowania urzadze¬ niem ^rzeznac^onynj eto rejestru itófifeu, 1 'linirt dzielenia, polaczonego z licz¬ nikiem i podlaczonego doiwejsc sterujacych rejestru resz- ejestru dzielnika, rejestru ilorazu i do wejscia dodat- 1 podlaczonego swoim wyjsciem rejestru ilorazu, zgodnie z wynalazkiem, zawiera uklad przetwarzania kodu trzech wyzszych pozycji dzielnika w kod adresu trzech pozycji reszty, podlaczony swym wejsciem informacyjnym do wyjscia rejestru dzielnika, wejsciem sterujacym — do wyjscia bloku mikroprogramowego sterowania urzadze¬ niem przeznaczonym do dzielenia i wyjsciem— do jed¬ nego z wejsc informacyjnych komutatora wyboru trzech pozycji reszty, podlaczony drugim wejsciem informacyj¬ nym do rejestru dzielnej (reszty) i wejsciem sterujacym do bloku mikroprogramowego sterowania urzadzeniem przeznaczonym do dzielenia, a wyjsciem polaczony jest z wejsciem trójpozycyjnego rejestru, wyjscie którego pod¬ laczone jest do jednego z wejsc bloku mikroprogramo¬ wego sterowania urzadzeniem do dzielenia, dwa dodat¬ kowe rejestry robocze przeznaczone odpowiednio, do przechowywania podwojonego dzielnika i do przecho¬ wywania potrojonego dzielnika, podlaczone wejsciami sterujacymi do wyjscia bloku mikroprogramowego ste¬ rowania urzadzeniem przeznaczonym do dzielenia, wej¬ sciami informacyjnymi do jednej z szyn informacyjnych, i dodatkowy rejestr buforowy, przeznaczony do posred¬ niego magazynowania reszty, podlaczony jednym wej¬ sciem do wyjscia rejestru dzielnej (reszty), drugim wej¬ sciem informacyjnym — do jednego z wyjsc bloku aryt¬ metycznego, wejsciem sterujacym do wyjscia bloku ste¬ rowania mikroprogramowego, a wyjsciem — do szyny informacyjnej.W dalszym ciagu opisu wynalazek objasniony jest na podstawie przykladu wykonania i zalaczonego rysunku, na którym przedstawiony jest schemat blokowy urzadze¬ nia przeznaczonego do dzielenia dwóch liczb, zgodnie z wynalazkiem.Urzadzenie przeznaczone do dzielenia dwóch liczb zawiera rejestr 1 dzielnej, który w cyklu dzielenia jest rejestrem reszty, i rejestr buforowy 2 przeznaczony do posredniego przechowywania reszty, polaczone miedzy soba w celu zrealizowania przepisywania informacji z jednego rejestru do drugiego, a takze podlaczone wyjscia¬ mi do szyny informacyjnej 3. Rejestr buforowy 2 prze¬ znaczony jest do zapamietywania reszty w przypadku jej odtworzenia. Oprócz tego urzadzenie zawiera rejestr 4 dzielnika i rejestry 5, 6 przeznaczone do przechowy¬ wania, odpowiednio, podwojonego i potrojonego dziel¬ nika, które swoimi wyjsciami podlaczone sa do szyny informacyjnej 7. Kazda z szyn informacyjnych 3 i 7 pod- 10 15 20 25 30 35 40 50 60 65 laczona jest do odpowiedniego wejscia informacyjnego bloku arytmetycznego 8. Wyjsjcje 0 bloku arytmetycznego 8 podlaczone jest do wejsc informacyjnych rejestru 1 reszty, rejestru buforowego 2, rejestru 4 dzielnika i re¬ jestrów dodatkowych 5, 6 dzielnika. Wyjscie 10 bloku arytmetycznego 8 podlaczone jest do wejscia 11 bloku 12 mikroprogramowego sterowania urzadzeniem przezna¬ czonym do dzielenia, zawierajacego uklady analizujace, dokonujace analizy cyklu dzielenia.Dla przygotowania cyklu dzielenia* urzadzenie zawiera uklad przemiany 13 kodu trzech wyzszych pozycji dziel¬ nika w kod adresu trzech pozycji reszty, podlaczony do wyjscia 14 rejestru 4 dzielnika w ten sposób, ze do ukladu przemiany 13 doprowadzane sa tylko trzy wyzsze po¬ zycje kodu dzielnika. Oprócz tego, urzadzenie zawiera komutator 15 przeznaczony do wybierania trzech wyz¬ szych pozycji reszty, który swym wejsciem informacyj¬ nym 16 podlaczony jest do wyjscia ukladu przemiany 13.Wejscie informacyjne 17 komutatora 15 podlaczone jest do wyjscia 18 rejestru 1 reszty. Do wyjscia komutatora rir podlaczony jest- rejestr trójpozyeyjny -HK wybranych pozycji reszty, który swym wyjsciem podlaczony jest do wejscia 20 bloku 12 sterowania mikroprogramowego.Urzadzenie zawiera, oprócz tego, rejestr 21 ilorazu i dodatkowy rejestr 22 ilorazu, polaczony z zasadniczym rejestrem 21 ilorazu poprzez obwody przesuniecia w le¬ wo o dwie pozycje. Dla podliczenia liczby cykli dziele¬ nia urzadzenie wyposazone jest w licznik 23. Licznik 23 od strony wyjscia polaczony jest z wejsciem 24 bloku 12 mikroprogramowego sterowania, a od strony wejscia —. z wyjsciem tegoz bloku 12. Wyjscie bloku 12 podlaczone jest równiez do wejsc sterujacych rejestru 1 reszty, re¬ jestru buforowego 2 reszty, rejestru 4 dzielnika, do dodat¬ kowych rejestrów 5, 6 dzielnika, ukladu przemiany 13, do komutatora 15, rejestru zasadniczego i dodatkowego 21, 22 ilorazu.Istota proponowanego sposobu polega na tym, co opi¬ sano ponizej. Dzielna i dzielnik, powinny byc znorma¬ lizowane przed rozpoczeciem procesu dzielenia. Dla uzys¬ kania prawidlowego wyniku, dzielnik powinien byc wiek¬ szym od dzielnej. Liczby przeksztalcone sa w kod dwój¬ kowy. Okresla sie kod ilorazu poprzez kolejno po sobie nastepujace odejmowanie kodu dzielnika, od kodu dziel¬ nej (reszty). Przed odejmowaniem kodu dzielnika od kodu dzielnej (reszty) uksztaltowany zostaje kod adresu trzech pozycji reszty. W tym celu okreslona zostaje wyz¬ sza znaczaca pozycja dzielnika i wydzielane sa trzy po¬ zycje reszty: pozycja odpowiadajaca wyzszej znaczacej pozyqi dzielnika i dwie sasiednie bardziej wysokie po¬ zycje. W pierwszym cyklu za reszte przyjmuje sie dzielna.Pozyq*e reszty wybierane sa w sposób nastepujacy: resz¬ ta ...XXX..., dzielnik 0001, gdzie litera X oznaczone zostaly wybierane pozycje reszty.Kombinacje wybranych pozyqi reszty sa analizowane i w zaleznosci od wyniku analizy wydzielonych trzech pozyqi reszty odejmowany jest od kodu reszty kod albo pojedynczego, albo podwójnego albo potrojonego dziel¬ nika, przez co uzyskuje sie dwie kolejne pozycje ilorazu.Analizowane sa nastepujace .mozliwe kombinaqe.Przy kombinacji wybranych pozycji reszty 000, reszta jest mniejsza od dzielnika. Dlatego kolejne dwie pozycje ilorazu moga przyjmowac wartosc równa tylko 00. Reszta przesuwana zostaje o dwie pozycje w lewo oraz wydzie¬ lane sa nowe trzy pozyq"e reszty wedlug takiej samej za¬ sady postepowania.108 594 5 Przy kombinaqi 001 reszta moze byc zarówno wielr- sza jak i niniejsza od dzielnika, odpowiednio do czego dwie pozycje ilorazu moga przyjmowac wartosc 01 lub 00. Dlatego na poczatku od kodu reszty odejmowany jest kod dzielnika i, jesli odejmowanie odbywa sie z pozy¬ tywnym rezultatem, reszta bedzie wieksza od dzielnika, a kolejne dwie pozycje ilorazu maja wartosc 01. W tym przypadku wynik odejmowania przesuwa sie o dwie po¬ zycje w lewo i staje sie nowa reszta.Jesli odejmowanie nie odbylo sie pozytywnie (z po¬ zytywnym wynikiem) reszta bedzie mniejsza od dziel¬ nika i kolejne dwie pozyqe ilorazu maja wartosc 00. W tym przypadku odtwarzana zostaje stara reszta przesunieta o dwie pozyq"e w lewo i rozpoczyna sie nowy cykl dzie¬ lenia poprzez wydzielenie pozycji nowej reszty.Przy kombinaq'i 010 kolejne dwie pozycje ilorazu moga przyjmowac wartosci 10 lub 01. Dlatego na poczatku od kodu reszty odejmowany jest kod podwojonego dzielnika.Przy pozytywnym odejmowaniu kolejne dwie pozycje ilorazu maja wartosc 10. Wynik odejmowania przesuwa¬ ny-jesfro dwie pozycje w^ kw»*i,roapociyna sie-aowy~cykl dzielenia. - Przy odejmowaniu bez pozytywnego wyniku, od odtworzonego starego kodu reszty odejmowany jest kod dzie]nika, kolejne dwie pozycje ilorazu maja war¬ tosc 01, wynik odejmowania przesuwany jest o dwie po¬ zycje w lewo i rozpoczyna sie nowy cykl dzielenia.Przy kombinacji 011 kolejne dwie pozycje ilorazu mo¬ ga przyjmowac wartosci 11, lub 10, lub 01.Dlatego z poczatku, od kodu reszty odejmuje sie kod potrojonego dzielnika. Przy pozytywnym wyniku odej-* mowania cykl konczy sie przesunieciem w lewo wyniku odejmowania, a przy nie pozytywnym wyniku odejmo¬ wania — od odtworzonego kodu reszty odejmuje sie kod podwojonego dzielnika i tak dalej.Przy kombinatach 100 i 101 kolejne dwie pozycje ilo¬ razu moga przyjmowac wartosc 11 lub 10, a przy kom¬ binacjach 110 i 111 kolejne dwie pozycje ilorazu moga byc tylko równe 11.Dzialania w tych przypadkach, wykonywane sa analo¬ gicznie, jak to zostalo wyzej opisane.Proponowany sposób dzielenia stanie sie bardziej zro¬ zumialy na podstawie opisu zasady dzialania urzadzenia przedstawionego na rysunku.Liczby podlegajace dzieleniu (dzielna i dzielnik) zos¬ taja znormalizowane przez wykorzystanie zasady rucho¬ mego przecinka i przeksztalcenie liczby w rachunkowy system szesnastkowy (kod dwójkowy).Po tym do rejestru 1 reszty wpisywana jest znormali¬ zowana mantysa dzielnej, do rejestru 4 dzielnika — znor¬ malizowana mantysa dzielnika; do rejestru 5 — podwojona mantysa dzielnika, a do rejestru 6 —- potrojona mantysa dzielnika. Do licznika 23 wprowadza sie stala (konstan¬ te) okreslona przez liczbe cykli dzielenia równa liczbie pozycji dzielnej lub dzielnika podzielonej przez dwa, poniewaz w ciagu jednego cyklu dzielenia w propono¬ wanym sposobie uzyskuje sie dwie pozycje ilorazu.Rejestr buforowy 2 przeznaczony do posredniego skla¬ dowania reszty, dodatkowy rejestr 22 ilorazu i rejestr 21 ilorazu sprowadzone sa do stanu zerowego. Do ukladu przetwarzania (przemiany) 13 kodu trzech wyzszych pozycji dzielnika w kod adresu trzech pozycji reszty do¬ prowadzone sa trzy wyzsze pozyqe mantysy dzielnika z rejestru 4 dzielnika za posrednictwem wyjscia 14. W zaleznosci od kombinaqi tych pozycji, uklad przemiany 13 wytwarza kod adresu trzech wyzszych pozycji reszty, 6 który okresla polozenie wyzszej znaczacej pozycji dziel¬ nika. Zaleznosc kodu adresu od kombinacji trzech wyz¬ szych pozyqi mantysy dzielnika zilustrowana jest w ta¬ blicy. 5 " Tablica Pozyqe dzielnika 000 001 010 011 100 101 110 iii Kod adresu 00 01 10 10 11 11 11 11 Kod adresu z wyjscia ukladu przemiany (przetwarza¬ nia) 13 doprowadzony jest do wejscia 16 komutatora 15 przeznaczonego do wybierania trzech pozycji reszty, który w- zaleznosci od kodu adresu wybiera z rejestru 1 reszty, zawartosc którego podawana jest do wejscia 17 komuta¬ tora 15, trey kolejne pozycje reszty (na poczatku procesu dzielenia— dzielnej), nizsza z których znajduje sie w tej samej po&ycji slowa maszynowego, co i wyzsza pozycja znaczaca mantysy dzielnika. Wybrane trzy pozycje resz¬ ty doprowadzane sa db trójpozycyjnego rejestru 19 wy¬ branych pozycji reszty. Nastepnie trzy wybrane pozycje z rejestru 19 doprowadzane sa do wejscia 20 bloku 12 sterowania mikroprogramowego, który dokonuje analizy kombinacji tych pozycji i w zaleznosci od wyników ana¬ lizy wytwarza rozkazy, doprowadzane do wejsc steru¬ jacych rejestrów 1, 2, 4, 5, 6. Na skutek tych rozkazów z wyjsc odpowiednich rejestrów 1, 2, 4, 5, 6 informacja za posrednictwem szyn informacyjnych 3 i 7, doprowadzana jest .do wejsc informacyjnych bloku arytmetycznego 8.Blok arytmetyczny 8 realizuje odejmowanie odpowied¬ niego kodu dzielnika od kodu reszty.Wyniki odejmowania odnoszace sie do wyjscia 9 blo¬ ku arytmetycznego 8 zapisywane sa w rejestrze 1 reszty i w rejestrze buforowym 2 reszty na wypadek odtwarzania reszty. Jednoczesnie z tym, blok 12 sterowania mikro¬ programowego posyla dwie kolejne pozycje ilorazu do rejestru dodatkowego 22. Po rozkazie przesianym do bloku 12 sterowania mikroprogramowego, zawartosc re¬ jestru 21 ilorazu przesuwa sie w lewo o dwie pozycje zwal¬ niajac tym samym dwie ostatnie pozycje, na które z re¬ jestru dodatkowego 22 doprowadzone sa kolejne dwie pozycje ilorazu.W wyniku analizy zawartosc rejestru 19 wybranych pozycji blok 12 sterowania mikroprogramowego, wy¬ twarza i przesyla do wejsc sterujacych rejestrów 1, 2, 4, 5, 6 nastepujace rozkazy.Przy kombinacji wybranych pozycji reszty 000 kolejne dwie pozyqe ilorazu beda równe 00. Przez blok 12 ste¬ rowania mikroprogramowego wytwarzany jest rozkaz braku zliczania z rejestrów 1, 4, 5, 6 reszty, odpowiednio dzielnika oraz podwojonego i potrojonego dzielnika. W tym przypadku reszta, znajdujaca sie w rejestrze 1 reszty przesuwa sie w lewo o dwie pozycje i ten przesuniety kod stanowi nowa reszte. Z wyjscia 18 rejestru 1 reszty, poprzez komutator 15, wybrane pozycje nowej reszty doprowadzane sa do rejestru 19 wybranych pozycji. Do rejestru dodatkowego 22 wprowadzony zostaje kod 00 i przemieszczony w lewo o dwie pozycje umiejscawiajac 25 30 35 40 45 50 55 60108 594 7 sie w ten sposób na koncu rejestru 21 ilorazu, gdzie od¬ bywa sie nagromadzenie wyniku dzielenia.Przy kombinacji wybranych pozycji reszty 001 kolej¬ ne dwie pozyqe ilorazu moga byc równe albo 01, albo 00. W tym przypadku blok 12 sterowania mikroprogra- mowego wysyla do wejsc sterujacych rejestru 1 reszty i rejestru 4 dzielnika rozkaz zliczania na szyne informa¬ cyjna 3 kodu reszty, a na szyne informacyjna 7 — kodu dzielnika. Po tym zawartosc szyn informacyjnych 3, 7 do¬ prowadzona jest do bloku arytmetycznego 8, gdzie od¬ bywa sie odejmowanie kodu dzielnika od kodu reszty- Jednoczesnie z tym reszta z rejestru 1 reszty przesylana jest do rejestru buforowego 2 reszty.Wynik odejmowania z wyjscia 9 bloku arytmetycznego 8 doprowadzony jest do rejestru 1 reszty jako nowa reszta.Do dodatkowego rejestru 22 ilorazu na rozkaz z bloku 12 sterowania mikroprogramowego przesylana jest konstanta (wielkosc stala) 01 i na sygnal przenoszenia z wyjscia 10 bloku arytmetycznego 8, przechodzacy do wejscia 11 blo¬ ku 12 sterowania mikroprogramowego, analizowany jest wynik odejmowania kodu dzielnika od kodu reszty.Jesli odejmowanie odbylo sie z pozytywnym skutkiem (istnieje sygnal przenoszenia), wówczas realizowane jest przesuniecie w lewo o dwie pozycje nowo uzyskanej resz¬ ty w rejestrze 1 reszty i ilorazu w rejestrze 21 ilorazu i w dodatkowym rejestrze 22 ilorazu. Do rejestru 19 wybra¬ nych pozycji reszty poprzez komutator 15 wybierane sa wedlug kodu adresu trzech pozycji reszty, pozycje nowej reszty i rozpoczyna sie nastepny cykl dzielenia. Jesli odej¬ mowanie nie odbylo sie z pozytywnym skutkiem (nie ma sygnalu przenoszenia), odtwarzana jest reszta poprzez przesylanie jej z rejestru buforowego 2 do rejestru 1 resz¬ ty. Do dodatkowego rejestru 22 wprowadzany jest kod 00, przesuwana jest o dwie pozycje w lewo reszta w re¬ jestrze 1 reszty oraz iloraz w rejestrze 21 ilorazu i w do¬ datkowym rejestrze 22 ilorazu. Nastepnie do rejestru. 19 wybranych pozycji reszty, poprzez komutator 15, prze¬ sylane sa wybrane pozycje reszty i rozpoczyna sie nas¬ tepny cykl dzielenia.Przy kombinacji wybranych pozycji reszty 010 kolej¬ ne dwie pozycje ilorazu moga przyjmowac wartosc 10 lub 01. W tym przypadku blok 12 sterowania mikropro¬ gramowego wysyla do wejsc sterujacych rejestru 1 reszty i rejestru dodatkowego 5 dzielnika rozkaz zliczania ma szyne informacyjna 3 kodu reszty, a na szyne informacyj¬ na 7 — kodu podwojonego dzielnika. Po tym zawartosc szyn informacyjnych 3, 7 podawana jest do bloku aryt¬ metycznego 8, gdzie odbywa sie odejmowanie kodu po¬ dwojonego dzielnika od kodu reszty. Jednoczesnie z tym reszta z rejestru 1 reszty przesylana jest do rejestru bu¬ forowego 2. Wynik odejmowania z wyjscia 9 bloku aryt¬ metycznego 8 posylany jest do rejestru 1 reszty jako nowa reszta, do rejestru dodatkowego 22 doprowadzany jest kod 10 jako kolejne pozycje ilorazu i analizowany jest wynik odejmowania, który z wyjscia 10 bloku arytmetycz¬ nego 8 doprowadzany jest do wejscia 11 bloku 12 ste¬ rowania mikroprogramowego. Jesli odejmowanie odby¬ lo sie z pozytywnym skutkiem, wówczas w rejestrach 1, 21, 22 przesuwaja sie w lewo o dwie pozycje odpowiednio reszta i iloraz, do rejestru 19 wybranych pozycji reszty doprowadzane sa wybrane pozycje nowej reszty i rozpo¬ czyna sie nowy cykl dzielenia. Jesli natomiast odejmo¬ wanie odbylo sie bez pozytywnego skutku, wówczas do szyny informacyjnej 3 doprowadzana jest stara reszta z rejestru buforowego 2 na szyne informacyjne 7 z re- 8 jestru 4 dzielnika zliczany jest kod dzielnika i w bloku arytmetycznym 8 od kodu odtworzonej reszty odejmo¬ wany jest dzielnik.Wynik odejmowania, bedacy nowa reszta, doprowa¬ dzany jest do rejestru 1 reszty. Do rejestru dodatkowego 5 22 ilorazu wprowadzany jest kod 01, reszta i iloraz prze¬ suwaja sie o dwie pozycje w lewo, wybrane pozycje no¬ wej reszty doprowadzane sa do rejestru 19 i rozpoczy¬ na sie nowy cykl dzielenia.Przy kombinacji 011 kolejne dwie pozycje ilorazu mo¬ ga przyjmowac wartosci 11, 10, 01. W tym przypadku blok 12 sterowania mikroprogramowego przesyla do wejsc sterujacych rejestru 1 reszty i do rejestru dodatkowego • dzielnika rozkaz zliczania ma szyne informacyjna 3 ko¬ du reszty, a na szyne informacyjna 7 — kodu potrojo¬ nego dzielnika. Po tym zawartosc szyn informacyjnych 3, 7 doprowadzana jest do bloku arytmetycznego 8, gdzie odbywa sie odejmowanie kodu potrojonego dzielnika od kodu reszty.Przy odejmowaniu z pozytywnym skutkiem do do¬ datkowego rejestru 22 ilorazu wprowadzany jest kod 11, w rejestrach 1, 21, 22 przesunieciu ulegaja reszta i ilo¬ raz, do rejestru 19 wybranych pozycji doprowadzane sa wybrane pozycje nowej reszty i rozpoczyna sie nastepny cykldzielenia. v Przy odejmowaniu z negatywnym skutkiem kodu po* trojonego dzielnika, od odtworzonej reszty odejmowany jest kod podwojonego dzielnika i tak dalej.Przy kombinacjach wybranych pozycji reszty 100 lub 101 kolejne dwie pozycje ilorazu moga przyjmowac war¬ tosc 11 lub 10, przy kombinacjach 110 lub 111 — tylko 11.Zakonczenie procesu dzielenia okreslane jest przez stan zerowy licznika 23. Po kazdym cyklu dzielenia na rozkaz z bloku 12 odbywa sie odejmowanie jedynki z za wartosci licznika 23 i zawartosc licznika 23 doprowadzo¬ na zostaje do wejscia 24 bloku 12 w celu przeprowadze¬ nia analizy, co do równosci stanu licznika zeru.Tak wiec opisany sposób dzielenia dwóch liczb i u- rzadzenie do wykonywania tego sposobu pozwalaja uzys¬ kac w ciagu jednego cyklu dzielenia dwie pozycje ilo¬ razu. W porównaniu z urzadzeniem, w którym w ciagu jednego cyklu uzyskuje sie tylko jedna pozycje ilorazu, szybkosc wykonania operacji dzielenia przy zastosowaniu urzadzenia wedlug wynalazku jest wyzsza o 80 procent. PL

Claims (2)

  1. Zastrzezenia patentowe 1. Sposób dzielenia dwóch liczb, polegajacy na tym, ze liczby przeksztalca sie w kod dwójkowy i okresla sie kod ilorazu poprzez kolejno po sobie nastepujace odej¬ mowania kodu dzielnika od kodu dzielnej (reszty), zna¬ mienny tym, ze przed odejmowaniem zostaje uksztal¬ towany kod adresu trzech pozycji reszty poprzez okres¬ lenie polozenia wyzszej pozyqi znaczacej w trzech wyz¬ szych pozycjach dzielnika, oraz tym, ze wedlug uksztal¬ towanego adresu wyodrebnione zostaja trzy pozycje- resz¬ ty: pozycja odpowiadajaca, wyzszej pozycji znaczacej kodu dzielnika i dwie sasiednie bardziej wysokie pozycje, przy czym wyodrebnione trzy pozycje reszty sa anali¬ zowane i w zaleznosci od wyniku analizy wyodrebnio¬ nych trzech pozycji reszty odejmuje sie od kodu reszty kod albo pojedynczego albo podwojonego albo potrojo¬ nego dzielnika uzyskujac dzieki temu dwie pozycje kodu ilorazu.
  2. 2. Urzadzenie do dzielenia dwóch liczb zawierajace blok arytmetyczny, wejscia informacyjne którego poprzez szy¬ ny informacyjne podlaczone sa do wyjsc informacyjnych 15 20 25 30 35 40 45 50 55 60108 594 10 rejestru dzielnej (reszty) i rejestru dzielnika, przy czym pierwsze wyjscie polaczone jest z wejsciami informacyj¬ nymi rejestru dzielnej (reszty) i rejestru dzielnika, a dru¬ gie wyjscie polaczone jest z wejsciem bloku sterowania mikroprogramowego urzadzeniem przeznaczonym do dzie¬ lenia, polaczonego z licznikiem i podlaczonego do wejsc sterujacych rejestru reszty rejestru dzielnika, rejestru ilorazu i do wejscia dodatkowego rejestru ilorazu, pod¬ laczonego swoim wyjsciem do wejscia informacyjnego rejestru ilorazu, znamienne tym, ze zawiera uklad prze¬ twarzajacy (13) kod trzech wyzszych pozyqi dzielnika w kod adresu trzech pozycji reszty, podlaczony wejsciem informacyjnym do wyjscia (14) rejestru (4) dzielnika, wejsciem sterujacym — do wyjscia bloku (12) sterowa¬ nia mikroprogramowego urzadzeniem przeznaczonym do dzielenia i wyjsciem — do jednego z wejsc informacyj¬ nych (16) komutatora (15) przeznaczonego do wybie¬ lania trzech pozycji reszty, podlaczonego drugim wejsciem informacyjnym (17) do rejestru (1) dzielnej (reszty), a wejsciem sterujacym — do bloku (12) mikroprogra- 10 15 20 mowego sterowania urzadzeniem przeznaczonym do dzie* lenia, a wyjsciem podlaczony do wejscia trójpozycyjne- go rejestru (19), wyjscie którego podlaczone jest do jed¬ nego z wejsc (20) bloku (12) mikroprogramowego ste¬ rowania urzadzeniem przeznaczonym do dzielenia, dwa dodatkowe rejestry robocze (5), (6) przeznaczone do przechowywania, odpowiednio, podwojonego i potro¬ jonego dzielnika, które podlaczone sa wejsciami steru¬ jacymi do wyjscia bloku (12) mikroprogramowego ste¬ rowania urzadzeniem przeznaczonym do dzielenia, wejs¬ ciami informacyjnymi — do jednego z wyjsc (9) bloku arytmetycznego (8), a wyjsciami — do jednej z szyn in¬ formacyjnych (7), i dodatkowy rejestr buforowany (2) przeznaczony do posredniego przechowywania reszty, podlaczony jednym wejsciem informacyjnym do wyjscia rejestru (1) dzielnej (reszty), drugim wejsciem infor¬ macyjnym — do jednego z wyjsc (9) bloku arytmetycz¬ nego, wejsciem sterujacym — do wyjscia bloku (12) sterowania mikroprogramowego, a wyjsciem — do szyny informacyjnej(3). v 13 Tn _2 16 15 \H II- 19 & n r?4, 20 21W 23 22 X 0 3 —' 14 -Dl 8 7 t: W PL
PL1977199419A 1976-07-07 1977-07-06 Method and apparatus for dividing two numbers PL108594B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SU762379670A SU734682A1 (ru) 1976-07-07 1976-07-07 Устройство дл делени

Publications (2)

Publication Number Publication Date
PL199419A1 PL199419A1 (pl) 1978-03-13
PL108594B1 true PL108594B1 (en) 1980-04-30

Family

ID=20668220

Family Applications (1)

Application Number Title Priority Date Filing Date
PL1977199419A PL108594B1 (en) 1976-07-07 1977-07-06 Method and apparatus for dividing two numbers

Country Status (8)

Country Link
US (1) US4141077A (pl)
JP (1) JPS5319730A (pl)
BG (1) BG29542A1 (pl)
DE (1) DE2730795A1 (pl)
FR (1) FR2357957A1 (pl)
GB (1) GB1540040A (pl)
PL (1) PL108594B1 (pl)
SU (1) SU734682A1 (pl)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0154791B1 (ko) * 1995-10-31 1998-11-16 김광호 병렬처리용 나눗셈회로

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3293418A (en) * 1964-07-08 1966-12-20 Control Data Corp High speed divider
US3733477A (en) * 1972-02-04 1973-05-15 Control Data Corp Iterative binary divider utilizing multiples of the divisor
US3852581A (en) * 1972-12-14 1974-12-03 Burroughs Corp Two bit binary divider

Also Published As

Publication number Publication date
US4141077A (en) 1979-02-20
BG29542A1 (en) 1980-12-12
DE2730795A1 (de) 1978-01-19
FR2357957A1 (fr) 1978-02-03
FR2357957B1 (pl) 1980-03-07
JPS5319730A (en) 1978-02-23
SU734682A1 (ru) 1980-05-15
GB1540040A (en) 1979-02-07
PL199419A1 (pl) 1978-03-13

Similar Documents

Publication Publication Date Title
KR940008615B1 (ko) 고기수제산기
JPH0661792A (ja) デジタル・フィルタ
CH644461A5 (de) Digitale multipliziereinrichtung.
US3234367A (en) Quotient guess divider
JPH03260866A (ja) 統計演算装置
PL108594B1 (en) Method and apparatus for dividing two numbers
CA2008026A1 (en) Divider for carrying out high speed arithmetic operation
US3116411A (en) Binary multiplication system utilizing a zero mode and a one mode
JPS6248857B2 (pl)
EP0416153B1 (de) Verfahren für Datenverarbeitungsanlagen zur Division von, zu Beginn jeweils normalisierten, beliebig langen Operanden und Divisionswerk zur Durchführung des Verfahrens
JPH0831024B2 (ja) 演算プロセッサ
US3018047A (en) Binary integer divider
SU651341A1 (ru) Устройство дл умножени
JP2552087B2 (ja) 10進乗算処理装置
US3239655A (en) Single cycle binary divider
JP2650209B2 (ja) 乗算装置
JP2803442B2 (ja) 開平装置
SU579614A1 (ru) Устройство дл делени
SU662939A1 (ru) Устройство дл умножени
SU911519A1 (ru) Устройство дл вычислени элементарных функций
SU583433A1 (ru) Устройство дл умножени
SU1417010A1 (ru) Устройство дл делени чисел
SU744562A1 (ru) Устройство дл делени дес тичных чисел
SU1357947A1 (ru) Устройство дл делени
SU822181A1 (ru) Устройство дл умножени чиселВ дОпОлНиТЕльНыХ КОдАХ