Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.10.2018, 19:30   #1
Kalu4ka
Новичок
Джуниор
 
Регистрация: 02.10.2018
Сообщений: 2
По умолчанию Работа с клавиатурой

Помогите решить задачу!!!

Написать программу наглядно демонстрирующую работу буфера клавиатуры. Необходимо отображать содержимое буфера в табличной форме с указанием текущего положения «головы» и «хвоста». Предусмотреть возможность посимвольной очистки буфера.
Kalu4ka вне форума Ответить с цитированием
Старый 02.10.2018, 22:20   #2
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

..а где этот буфер находится хоть знаешь?
(в этом разделе обычно помогают, ..а решают за тебя - во фрилансе)
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 03.10.2018, 10:50   #3
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,534
По умолчанию

Вот когда такие неопределенные задачи, возникает масса вариантов
Цитата:
.Предусмотреть возможность посимвольной очистки буфера.
- в любом месте буфера? тогда чем указать это место - опять же клавой, не мышью же? Или последний введенный символ? так это штатный режим клавы.
digitalis вне форума Ответить с цитированием
Старый 03.10.2018, 15:57   #4
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

так очистить буфер проще-простого..
по смещению 0040:0080 находится указатель на голову буфера,
а дальше по адресу 0040:0082 - указатель на хвост.
буфер заполняется последовательно, а текущий указатель валяется по адресу 0040:001А.

Чтобы очистить буфер как сказано в задаче, нужно взять указатель с адреса(80h) и записать его в оба поля по адресам 1Ah и 1Ch (одинаковые значения определяют пустой буфер). Теперь забиваем нулями весь/32-байтный буфф с адреса, на который указывает(40:80), и получаем девственный клавиатурный буфер.
Изображения
Тип файла: png keybBuff.png (8.7 Кб, 136 просмотров)
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Старый 04.10.2018, 10:30   #5
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,534
По умолчанию

Так ему же надо "посимвольная очистка". К примеру, 3-й и 12-й символ с краю. Что именно 3-й и 12-й - угадано телепатически. Такова очередная бредовость учебных задач.
digitalis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с клавиатурой Serega555 Windows 2 08.09.2017 18:09
Работа с клавиатурой VeloceRAPTOR Общие вопросы Delphi 1 02.06.2010 22:38
Работа с клавиатурой ilsen_diaz Помощь студентам 1 27.05.2010 14:57
работа с клавиатурой progN Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 11 30.04.2010 17:22
Работа с клавиатурой в С++ Matr1x C++ Builder 5 27.01.2010 22:56