Форум программистов, компьютерный форум, киберфорум
Assembler: DOS/Real Mode/16-bits
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
splitt
1

Сгенерировать 10 звуковых сигналов продолжительностью 0,2 секунды с задержкой 0,2

20.12.2012, 02:26. Показов 1370. Ответов 1
Метки нет (Все метки)

Задание1: Сгенерировать 10 звуковых сигналов продолжительностью 0,2 секунды с задержкой 0,2 секунды между их воспроизведением.

----Включение звука----
Исходный:

Assembler
1
2
3
IN AL,61h
OR AL,00000011b
OUT 61h,AL
Изменённый:

Assembler
1
2
MOV AL,00000011b
OUT 61h,AL
1.В чём отличие реализации?
2.Где,в какой части процессора реализуется изменённый код?

Задание2: На языке Ассемблер написать программу,обеспечивающую запрет сканирования клавиатуры на 10с.

Assembler
1
2
3
4
5
@M1:
 
IN AL,64h 
AND AL,00000010b
JNZ @M1
Что происходит в данной части кода?

Заранее спасибо!
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.12.2012, 02:26
Ответы с готовыми решениями:

Сгенерировать через Speaker IBM PC 10 звуковых сигналов
Добрый день, форумчане! Есть задание сгенерировать через Speaker IBM PC 10 звуковых сигналов....

Генерация звуковых сигналов
Есть задача: нужно написать резидентную программу, осуществляющую генерацию звуковых сигналов при...

Генерация звуковых сигналов
Составить программу звуковых сигналов в соответствии с диаграммой. Pause ввести с клавиатуры ...

Генератор звуковых сигналов
Всем доброго времени суток. Дали мне задание: сделать на ардуино генератор звуковых сигналов. Что...

__________________
1
Ушел с форума
Автор FAQ
14184 / 7067 / 833
Регистрация: 11.11.2010
Сообщений: 12,677
20.12.2012, 04:52 2
splitt,
  1. классический вариант
    Assembler
    1
    2
    3
    
        in al,61h   ;получаем текущий статус порта B
        or al,00000011b ;добавляем к статусу два бита, которые включат системный динамик и таймер
        out 61h,al  ;заменяем байт статуса порта B
  2. а здесь нам наплевать на статус порта B, но результат будет точно такой же -- включение системного динамика и таймера
    Assembler
    1
    2
    
    MOV AL,00000011b
    OUT 61h,AL
  3. Через порт 64h, например, выполняется сброс (отключение) процессора 80286 для возврата из защищенного режима работы в реальный. Перед тем как посылать команду процессору 8042, необходимо убедиться в том, что его внутренняя очередь команд пуста. Это можно сделать, прочитав слово состояния 8042 из порта с адресом 64h. Бит с номером 1 должен быть равен нулю.
    Фрагмент программы, проверяющий состояние очереди команд процессора 8042:
    Assembler
    1
    2
    3
    4
    5
    6
    7
    8
    
        ; Счетчик для ограничения времени ожидания готовности 8042
          mov  cx,0     
    wait_loop:  
        ; Читаем порт состояния процессора 8042
          in   al, 64h 
          and  al, 00000010b  ; флаг готовности   
        ; Ожидаем готовность процессора 8042 к приему команды
          loopnz  wait_loop
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.12.2012, 04:52

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Программирование звуковых сигналов
составить программу звука, который на картинке.

Обработка и фильтрация звуковых сигналов
Здравствуйте. Очень нужен ваш совет. В университете задали написать программу фильтрации звука....

Функции подачи звуковых сигналов
Есть ли стандартные функции для издавания звуков? Каковы их возможности?

Программа генерации звуковых сигналов
Необходимо составить программу согласно заданию. Почти ничего в ассемблере не понимаю. Самая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.