C: = Dу 8 n: = 16У 17 c 0 : = Sу 9 A: = C span> Рис. 2. Таблиця мікрооперацій і логічних умов
2.2 Побудова змістовної ДСА
Змістовна граф-схема алгоритму операції ділення без відновлення залишку наведена на рис. 3. p align="justify"> Алгоритм передбачає формування знака результату і збереження його тимчасово у змінній s. Після цього виробляється розподіл модулів чисел (знаки операндів обнуляються). p align="justify"> Спочатку проводиться пробне віднімання дільника з ділене. Оскільки знаки операндів - 0, то поява 1 у знаковому розряді різниці означає, що А <В, і можна продовжувати розподіл (ціла частина приватного дорівнює 0). При з 0 = 0 поділ неможливо - формується ознака переповнення.
У процесі отримання цифр приватного значення чергового залишку приймає мінлива С. Незалежно від знака залишку вона копіюється в змінну А, яка потім збільшується вдвічі шляхом зрушення вліво на один розряд. Залежно від знака змінної С (знака залишку) формується чергова цифра змінної D (приватного) і приймається рішення про дію на наступному кроці - додавати або віднімати дільник з зрушеного залишку. Після арифметичної операції виконується зрушення вліво приватного D (звільняється місце для чергової цифри приватного), змінюється лічильник цифр приватного і перевіряється умова виходу з циклу - отримання шістнадцяти цифр приватного, включаючи саму першу цифру - "0 цілих", на місце якої копіюється знак приватного із змінної s.
В В
Рис. 3. Змістовна ДСА операцій поділ без відновлення залишку
2.3 Отримання функціональної ДСА
На етапі отримання функціональної ДСА операторні вершини графа алгоритму позначаються символами мікрокоманд, а умовні вершини символами логічних умов, які вписуються у всередину відповідних вершин.
Y 1 = y 1 < span align = "justify">; Y 2 = y 2; Y 3 = y 3 , y 4; Y 4 = y 5 ; Y span> 5