Цифровые устройства и микропроцессор. Программирование микроконтроллеров семейства MCS-51. Жаринов О.О. - 35 стр.

UptoLike

Составители: 

35
торной работы № 3 данный алгоритм не следует брать за основу!).
16-разрядный результат деления загружается в стек последовательно:
сначала старший байт, затем младший. Если результат от деления не-
нулевой, устанавливается флаг F0.
2. Процедура вычисления выражения X
k
:=X
k
X, оформленная в виде
подпрограммы (расположена в диапазоне адресов 0053h–007Fh). Умно-
жение дробных беззнаковых 16-разрядных чисел производится на осно-
ве метода целочисленного умножения с использованием алгоритма сек-
ционированного умножения. Результат «автоматически» округляется до
16 разрядов и пересылается в регистры R4 и R5. В данной подпрограм-
ме также наглядно демонстрируются преимущества работы со стеком.
Изучение ее структуры будет полезным при выполнении заданий лабо-
раторной работы № 6.
При выполнении лабораторных работ, связанных с арифметически-
ми вычислениями, для проверки правильности получаемых результатов
удобно использовать программу «Калькулятор», поставляемую вместе
с операционной системой Windows. Например, получение десятичного
эквивалента дробного числа, представленного в шестнадцатеричном
формате, производится по следующему алгоритму: при нажатой кнопке
«Hex» набирается шестнадцатеричный код, затем нажимается кнопка
«Dec», после чего число нужно поделить на 256
10
(при 8-разрядном
представлении исходного числа: 0xNNh) или на 65536
10
(при 16-разряд-
ном представлении исходного числа: 0xNNNNh). Для получения шест-
надцатеричного кода дробного числа, записанного в десятичном фор-
мате, производятся обратные действия.
Реально полученные результаты работы программы из примера 7 для
четырех различных значений аргумента Х приведены в табл. 1.
Таблица 1
тнемуграйондохВ
Х
еинечанзеончоТ
f(X ялд) X ced,
татьлузеР Y -нечулоп,
еммаргорпвйын
ьтсоншергоП
xehcedxehcedxehced.де,.сба
ε ced,)X(
000С0057,0039D93848,0D19D01848,09143000,0
00080005,03E2692683,0CD2671683,0713000,0
0004005
2,0696237051,0296266051,0464000,0
99910001,08BD006350,07BD075350,0165000,0