Читайте также: |
|
1. Написать программу, вычисляющую 20 значений массива А по формуле А[i]=7*i + 5; i = 0...19.
Полученный массив записать в РПД, начиная с адреса 40Н.
2. Написать подпрограмму, копирующую в цикле 10 байт из РПД, наложенных на маску 1001100lb, начиная с адреса 50Н, во внешнюю память данных (ВПД), начиная с адреса С200Н. В программе осуществить вызов этой процедуры и возврат из нее.
3. Написать подпрограмму, сканирующую в цикле состояние регистров R0-R7 текущего регистрового банка. Если значение регистра равно нулю - соответствующий номеру регистра бит аккумулятор тоже сбрасывается. Если регистр не равен нулю - в бит аккумулятора записывается единица.
4. Написать подпрограмму, определяющую четность числа единиц в аккумуляторе без использования флага паритета Р.
6. Написать программу, вычисляющую 12 значений массива А по формуле А[i]=(3 * (i + 4)) and 0FEH; i = 1...12.
Полученный массив записать в ВПД, начиная с адреса С200Н.
Контрольные вопросы.
1. В чем заключается отличие команд JB и JNB?
2. В чем состоит отличие команд JMP и AJMP?
3. В чем состоит отличие команд JC и JNC?
4. Какие команды перехода влияют на флаги?
5. Какая команда проверяет флаг Z на равенство "0"?
6. Какие команды взаимодействуют с флагом Z?
7. Какие действия выполняет команда CJNE?
8. Какие действия выполняет команда DJNZ? Можно ли командой перехода изменить флаг Z?
9. Существует ли разница между командами ACALL и LCALL?
10. Каково значение над стеком, если Вы находитесь в подпрограмме?
11. Какие команды взаимодействуют с флагом С?
12. Какие виды переходов в МК51 вы знаете в зависимости от разрядности указываемого в команде адреса перехода или вызова. В чем отличия этих видов переходов и вызовов.
13. По каким условиям возможно организовать ветвящиеся вычислительные процессы в МК51.
14. В чем отличие команд возврата из подпрограмм RET и RETI.
15. Какие процессы и источники могут вызвать ситуации прерываний в МК51.
16. Какие условия могут вызвать блокировку прерывания и его необслуживание.
17. Каков порядок опроса флагов прерываний (приоритет обслуживания) установлен по умолчанию в МК51. Каким образом можно изменить эти приоритеты.
Дата добавления: 2015-07-11; просмотров: 54 | Нарушение авторских прав