![]() |
1. Заголовок или название темы должно быть информативным
2. Все тексты программ должны помещаться в теги [CODE=asm] [/CODE]
3. Прежде чем задавать вопрос, см. "FAQ",если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно, такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Ассемблера. Исключение только с согласия модератора.
5. НЕ используйте форум для личного общения! Все, что не относиться к обсуждению темы - на PM!
6. Проверяйте программы перед тем, как выложить их на форум!!
![]() |
Венечка |
![]() ![]()
Сообщение
#1
|
![]() Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
Нам на паскале задали написать прогу(требуется создать DOS-программу для просмотра фрагментов содержимого оперативной памяти. Основная цель работы – научиться эффективно пользоваться четырехбайтными адресами реального режима процессоров i80x86.
) с такими требованиями: -программа использует текстовый режим работы монитора; -весь вывод на экран производится посредством прямой записи в видеопамять (в диапазон памяти адаптера CGA – сегмент $b800); -программа выполняется в окне. Это окно исчезает после ее исполнения, при этом восстанавливается исходное содержимое экрана; -окно состоит из двух полей: поля просмотра фрагмента содержимого памяти и -поля ввода базового адреса; -после нажатия на ключевую комбинацию клавиш (например клавиша 'Ins' для сегментной части адреса и клавиша 'Del' для смещения) программа позволяет ввести базовый адрес (с которого начинается отображаемый диапазон); -нажатие на стрелки вверх и вниз вызывает прокрутку содержимого оперативной памяти в окне просмотра; -нажатие на клавиши 'PgUp' и 'PgDn' вызывает ускоренную прокрутку содержимого; -в окне отображения выводится несколько (не менее четырех) строк формата: <адрес> - <серия слов>; -детали ввода базового адреса и вывода дампа памяти оговариваются в вариантах. Ну вот мое задание: 1) Базовый адрес задается в десятеричном виде одним компонентом – абсолютным номером ячейки и 2)Содержимое выводится в символьном виде сериями по 16 однобайтовых слов. Я сделала все классно, а препод не принял.... ![]() -Программа предоставляет возможность переключать режимы вывода содержимого памяти во время работы. -По нажатию функциональных клавиш программа должна перемещаться к указанным в варианте задания структурам данных DOS и демонстрировать их содержимое. -Содержимое структур данных DOS производится как в любом из трех стандартных режимов, так и в режиме специфическом для данной структуры, то есть с интерпретацией данных в контексте их предназначения (в виде записи с именованными полями). -Программа получает информацию о расположении структур данных DOS посредством системных запросов, выполняемых через программные прерывания. -В управлении монитором наряду с прямым доступом к видеопамяти используются функции прерывания BIOS 10h. В частности через BIOS выполняется управление положением курсора. Как, вообще не представляю?! Я в паскале то не ахти, а тут ещё ассемблер... ![]() ОБЪЯСНИТЕ, ПОЖАЛУЙСТА!! -------------------- Драйв FoReVeR!
|
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Венечка
А можно попросить присоединить исходник твоей программы? Посмотрим, чего он хочет... |
Венечка |
![]()
Сообщение
#3
|
![]() Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
Денег, наверно... ;)
Исходник именно для моего задания найти не могу, а вот другой иходник, где задание 1)Базовый адрес задается в десятеричном виде двумя компонентами: сегментом и смещениеми 2)Содержимое выводится в восьмеричном виде сериями по 8 однобайтовых слов. Оно с моим почти идентично, там чуток поменять - это не проблема, главно хоть в глаза увидеть как должно быть. Прикрепленные файлы ![]() -------------------- Драйв FoReVeR!
|
Altair |
![]()
Сообщение
#4
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Цитата Прикололся и говорит перепиши используя ассемблерные вставки... И еще требования: Ассемблерные вставки? так надо на пасе писать основной код что-ли??? ЗЫ: однако вы самокритичны... не надо так... ;) -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Венечка |
![]()
Сообщение
#5
|
![]() Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
Ага, основной код надо на паскале (чтоб его !
![]() А куда эти вставки? Фиг знает, я поняла что процедуры переписывать надо, там ещё слово "asm" должно быть, какие-то АН, ВН. Я же говорю НУ НЕ ДАНО МНЕ! :ypr: -------------------- Драйв FoReVeR!
|
GoodWind |
![]()
Сообщение
#6
|
![]() Автооответчик ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 188 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Цитата НУ НЕ ДАНО МНЕ! прекратить самоуничижение ![]() ![]() Ассемблер Вы (а можно на "ты" ? ) изучали ? -------------------- Неадекватная чушь может быть адекватным ответом на неадекватный вопрос. Понятно или разжевать?
|
Altair |
![]()
Сообщение
#7
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Цитата там ещё слово "asm" должно быть Асм это зарезервированно слово для начала вставки ассемблерной. Цитата какие-то АН, ВН. Это регистры. AX: AH, AL BX: BH, BK и так далее... ![]() -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Венечка |
![]()
Сообщение
#8
|
![]() Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата(GoodWind @ 14.11.04 21:15) Ассемблер Вы (а можно на "ты" ? ) изучали ? В том-то и дело в жизни об ассемблере ничего не знаю! (на "ты" можно ;) ) А то что знаю недостаточно для решения этой задачи... Самое главное время на изучение нет, сдавать в пятницу, в эту... ![]() -------------------- Драйв FoReVeR!
|
Altair |
![]()
Сообщение
#9
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Стоп!
Если вы не изучали асма, то ва мне могут давать такого задания! -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Венечка |
![]()
Сообщение
#10
|
![]() Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата А куда эти вставки? Фиг знает, я поняла что процедуры переписывать надо, там ещё слово "asm" должно быть, какие-то АН, ВН. Представляю как это смешно - НЕ МОЧЬ СДЕЛАТЬ ТАКУЮ ПРОГУ, ТОЛЬКО ИЗ_ЗА ТОГО, ЧТО ТОЛКОМ РАЗОБРАТЬСЯ ВРЕМЕНИ НЕ ДАЛИ! Эээх, быть мне дворником :p7: -------------------- Драйв FoReVeR!
|
Венечка |
![]()
Сообщение
#11
|
![]() Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата(Oleg_Z @ 14.11.04 22:49) Стоп! Если вы не изучали асма, то ва мне могут давать такого задания! В нашем универе всё возможно!!! А так как у нас в группе все ВСЁ понимают, обычным людям никаких объяснений и пояснений не дали. ![]() -------------------- Драйв FoReVeR!
|
Altair |
![]()
Сообщение
#12
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Цитата Эээх, быть мне дворником Неа, der Soldaten! ![]() :D -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
volvo |
![]()
Сообщение
#13
|
Гость ![]() |
Oleg_Z
Offtop: Цитата Я сделала все классно Или не только у нас девушки служат? |
Altair |
![]()
Сообщение
#14
|
![]() Ищущий истину ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 824 Пол: Мужской Реальное имя: Олег Репутация: ![]() ![]() ![]() |
Блин, Run-Time-Error у меня!
Я и не посмотрел профиль, а ник не дочита, мне показалосьт Ванечка! Извините.. тогда надо помочь на 100% ![]() Щас ТП установлю ... -------------------- Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С) |
Венечка |
![]()
Сообщение
#15
|
![]() Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата Я и не посмотрел профиль, а ник не дочита, мне показалосьт Ванечка! Цитата Неа, der Soldaten Ребят! Ну вы насмешили - хоть настроение подняли! Пасибки ![]() -------------------- Драйв FoReVeR!
|
P@sh@ |
![]()
Сообщение
#16
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 180 Пол: Мужской Репутация: ![]() ![]() ![]() |
интересно, зачем через BIOS выполняется управление положением курсора, если вывод на экран производится посредством прямой записи в видеопамять (в диапазон памяти адаптера CGA – сегмент $b800) ?
и еще, какие структуры данных DOS подразумеваются? |
P@sh@ |
![]()
Сообщение
#17
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 180 Пол: Мужской Репутация: ![]() ![]() ![]() |
Венечка
можно начать с процедуры вывода на экран (как раз посредством прямой записи в видеопамять) procedure ShowString(x,y: word; s: string); а объекты обязательно использовать в программе? может лучше без них? |
Венечка |
![]()
Сообщение
#18
|
![]() Группа: Пользователи Сообщений: 8 Пол: Женский Репутация: ![]() ![]() ![]() |
Спасибо, P@sh@!
![]() Вот гляньте в ехешник - это он нам пример привел как должна прога выглядеть после компиляции, а сам код должен быть написан с ассемблерными вставками. Прикрепленные файлы -------------------- Драйв FoReVeR!
|
![]() ![]() |
![]() |
Текстовая версия | 18.06.2025 20:46 |