7. Контрольный пример.
Для просмотра результатов вместо порта P1 будем значения Uk, будут помещаться во внутреннюю память, начиная с адреса 20H и заканчивая адресом 27H , в R0 будет размещаться адрес внутренней памяти и “MOV A, P1” заменяется на “MOV A, @R0”. Так же уменьшим количество шагов и время программной задержки.
NAME 78 | ||
CSEG AT 0H | ||
ORG 0H | ||
MOV 21H, #1 | задаются значения Uk | |
MOV 22H, #3 | ||
MOV 23H, #6 | ||
MOV 24H, #9 | ||
MOV 25H, #6 | ||
MOV 26H, #7 | ||
MOV 27H, #9 | ||
MOV R0, #20H | в R0 помещается адрес 20H | |
MOV R2, #3 | в R2 помещается начальное значение Uупр | |
MOV B, #10 | в B помещается количество шагов | |
MOV A @R0 | в A помещается содержимое ячейки с адресом R0 | |
MOV R3, A | в R3 помещается содержимое А (ячейки с адресом 20H) | |
M1: | INC R0 | значение R0 (адрес внутренней памяти) увеличивается на 1 |
MOV R4, #3 | инициализация счетчика программной задержки | |
MOV A, R2 | ||
MOV P2, A | ||
M2: | NOP | |
DJNZ R4, M2 | значение R4 (счетчик программной задержки) уменьшается на 1 и при R40 осуществляется переход на метку M2 | |
MOV A, @R0 | в A помещается содержимое ячейки с адресом R0 (Uk+1) | |
SUBB A, R3 | из A вычитается R3 (Uk+1 сравнивается с Uk) | |
JC M3 | если флаг C=0 (Uk>Uk+1), то осуществляется переход на метку M3 | |
MOV A, @R0 | в A помещается содержимое ячейки с адресом R0 | |
MOV R3, A | в R3 помещается значение Uk+1 из A | |
INC R2 | значение R2 (Uупр) увеличивается на 1 | |
INC R2 | значение R2 (Uупр) увеличивается на 1 | |
INC R2 | значение R2 (Uупр) увеличивается на 1 | |
DJNZ B M1 | значение B (счетчик шагов) уменьшается на 1 и при B0 осуществляется переход на метку M1 | |
AJMP M5 | осуществляется безусловный переход на метку M5 | |
M3: | INC R0 | значение R0 (адрес внутренней памяти) увеличивается на 1 |
DEC R2 | значение R2 (Uупр) уменьшается на 1 | |
MOV R4, #3 | инициализация счетчика программной задержки | |
CLR C | флаг С устанавливается в 0 | |
MOV A, R2 | ||
MOV P2, A | ||
M4: | NOP | |
MOV A, @R0 | в A помещается содержимое ячейки с адресом R0 (Uk+1) | |
SUBB A, R3 | из A вычитается R3 (Uk+1 сравнивается с Uk) | |
MOV A, @R0 | в A помещается содержимое ячейки с адресом R0 (Uk+1) | |
MOV R3, A | в R3 помещается значение Uk+1 из A | |
JC M3 | если флаг C=0 (Uk>Uk+1), то осуществляется переход на метку M3 | |
M5 | NOP | |
END |
... на C. Задание курсовой работы Прямая задана уравнением ax+by+c=0, a и b не равны 0. Определить, пересекают ли все прямые первую прямую. Блок-схема Листинг программы KURS.EXE #include<iostream.h> #include<fstream.h> #include<stdlib.h> #include<conio.h> #include<math.h> #include<graphics.h> int i, x[640], y[480], ox, oy, z; float k, m, ...
... начальной окружности (по центру прутка из которого сделана цепь). Для пластинчатых цепей звездочки делают литыми или из проката. где t - шаг цепи, z - число зубьев звездочки. Назначение и конструкции барабанов Барабаны предназначены для преобразования вращательного движения привода в поступательное перемещение груза. Кроме того барабаны служат и для собирания каната. Обычно они ...
isnīgi tiesā, tam pilsēta plaukst un zeļ, un tauta laimīgi dzīvo. Tur valda pārticība un saticība. Hēsiods aicina valdniekus apsvērt vērīgi sirdī, kā spriest taisnīgu tiesu, jo tautai ir jāmaksā par valdnieku vainu. Ļaunumu ir pilna pasaule un ceļš uz to ir līdzens un viegli ejams. Run ...
... 257;da pilienus). *Sacerējumu lasīšana par ekskursiju: «Утром я проснулась с хорошим настроением, потому что сегодня мы всем классом должны идти на маленькую экскурсию. Когда я пришла в школу, то увидела, что и все дети тоже радостные; все хотели быстрее идти на экскурсию. Мы построились и дружно отправились. Нам было очень интересно. По улице Яуна был красивый скворечник. Когда ...
0 комментариев