Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Ассемблер? Это просто! Учимся программировать (FAQ)


Служба Рассылок Subscribe.Ru

Ассемблер? Это просто! Учимся программировать (FAQ)
______________________________________

Выпуск N 162

Вопросы, которые поступили от подписчиков рассылки
"Ассемблер? Это просто! Учимся программировать"

Дата выхода: 2001-12-24


Вопрос №1968

Здравствуйте! У меня почему-то программа сразу выходит при работе с файлами (взял пример из главы 9), пытался корректировать, писал такие же процедуры ожидания, как и в предыдущих главах перед выходом - не помогло.
Может быть вы знаете, в чем дело?

Ответ

Здравствуйте, Андрей!

Отошли исходник, посмотрю.

С уважением,
root
.


Отправил эксперт: root
Эксперт отправил ответов (всего): 6

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1969



Добрый день всему коллективу это снова пишу я
Так как я ну очень начинающий то спросить мне здесь в КОСТАРИКЕ некого и извините что беспокою вас
1/ когда я загрузил ассемблер и расраковал то какая там
папка и для чего не могли бы обьяснить
я открыл и попробовал писать /PVB/ но незнаю правильно выбрал или нет
2/в этой программе/PVB/ я написал первую програму из ваших уроков
но как еЈ ассемблировать не нашЈл ,какую иконку теперь нажать чтоб внестипрограму??
может это я такой не понятливый а возможно и для других начинающих
наверно это надо обьяснить
Хотел узнать почему сразу открывается TASM\BIN
Но что мне не понятно то при влючении TASM сразу выходит c:\tasm\bin
и если я ставлю c:\tasm\bin\tasm выходит снова c:\tasm\bin как сделать чтобы было c:\tasm
может я не ту папку открываю в ТАСМ?
Хотел бы учится на МАСМ но к сожелению не умею пользоватся выше я написал мои проблемы
Пользуясь случаем хочу спросить как запустить IDA -декомпрессор он мне пишет
The key file is not found or is corrupted
я так понял что он меня обвиняет в коррупции-вообще я англо не знаю
здесь говорят на испанском
ЕЩі РАЗ С НАСТУПАЮЩИМ
ЗДЕСЬ СПРАВЛЯЮТ 25го
ТАК ЧТО Я НАЧНУ ПО МЕСТНОМУ А ЗАКОНЧУ ПО РУССКИ 14го

Ответ

Здравствуйте, VLAD!
МДА. В костарике есть нортон командер или (лучше) дос навигатор или фар? Если нет скачай DN с www.ritlabs.com (freeware) или FAR с www.rarsoft.com (shareware, хотя для граждан стран бывшего СССР freeware). Там творишь свой исходник, нарпимер 1.asm и помещаешь его в каталог с тасмом (c:\tasm\bin). Компилишь его:
tasm 1.asm
Линкуешь
tlink /t 1.obj для com файла
tlink 1.obj для exe
Вот смотри батник, который может тебе помочь. Обзовешь его типа makecom.bat
tasm %1
tlink /t %1

запускаешь так например makecom 1
(как сделать таку каку для exe понятно)

Насколько я помню IDA - interactive disassembler, а не какой не декомпрессор. И в корупции он тебя не обвиняет :) (как бы ты интересно перевел название песенки AC/DC "Rock'n'roll ain't noise pollution"). Просто он говорит что ключевой файл не найден или поврежден - типа IDA у тебе не зарегистрированная или плохо/не поломанная.
ЗЫ А английский - учи, если программить хочешь. С локализованными версиями и доками всегда нарпяг.


Отправил эксперт: Painbringer (http://limanski.narod.ru - нечто наподобие домашней страницы)
Эксперт отправил ответов (всего): 281

Экспертная группа: Работа с MASM/TASM

Вопрос №1964


Здравствуйте эксперты!
>Это не данные были по другому смещению!!! Это дс был другой.
Т.е.? Можно еще раз для особо продвинутых?

Ответ

Здравствуйте, ILYA D.!
Ну представь, что DS - это автобус с координатами ds (одномерное пространство), а данные это пассажиры. Пассажиры находятся на расстоянии offset от автобуса (относительные координаты). Меняем координаты автобуса (делаем их равными координате пассажиров (бедные пассажиры)), теперь расстояние до них от автобуса = 0.


Отправил эксперт: Painbringer (http://limanski.narod.ru - нечто наподобие домашней страницы)
Эксперт отправил ответов (всего): 284

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1970



Добрый день всему коллективу это снова пишу я
Так как я ну очень начинающий то спросить мне здесь в КОСТАРИКЕ некого и извините что беспокою вас
1/ когда я загрузил ассемблер и расраковал то какая там
папка и для чего не могли бы обьяснить
я открыл и попробовал писать /PVB/ но незнаю правильно выбрал или нет
2/в этой программе/PVB/ я написал первую програму из ваших уроков
но как еЈ ассемблировать не нашЈл ,какую иконку теперь нажать чтоб внестипрограму??
может это я такой не понятливый а возможно и для других начинающих
наверно это надо обьяснить
Хотел узнать почему сразу открывается TASM\BIN
Но что мне не понятно то при влючении TASM сразу выходит c:\tasm\bin
и если я ставлю c:\tasm\bin\tasm выходит снова c:\tasm\bin как сделать чтобы было c:\tasm
может я не ту папку открываю в ТАСМ?
Хотел бы учится на МАСМ но к сожелению не умею пользоватся выше я написал мои проблемы
Пользуясь случаем хочу спросить как запустить IDA -декомпрессор он мне пишет
The key file is not found or is corrupted
я так понял что он меня обвиняет в коррупции-вообще я англо не знаю
здесь говорят на испанском
ЕЩі РАЗ С НАСТУПАЮЩИМ
ЗДЕСЬ СПРАВЛЯЮТ 25го
ТАК ЧТО Я НАЧНУ ПО МЕСТНОМУ А ЗАКОНЧУ ПО РУССКИ 14го

Ответ

Здравствуйте, VLAD!
Не нада MASM, пока...!

Судя по тексту письма, ты решил начать даже раньше, чем на Коста-Рике...
1. Надеюсь, не нада рассказывать, в какой последовательности включать комп?
2. Инсталлируй ТАСМ в папку С:\TASM (по умолчанию туда и синсталлится)
3. Затем у тебя должна появиться папка C:\TASM\BIN, в которой и находятся tasm.exe, tlink.exe, TD.exe и еще куча всего, но нам нужны только эти три.
4. Создай в Notepad-е (блокнот в виндовсе) файл 1.asm, в который скопируй текст да хоть примера из первого приложения и сохрани его в папке С:\TASM\BIN !!!!!!!!! и ни в какой другой!!! (восклицательные знаки добавлять не нужно.)
5. Запутси файл command.com
6. Введи в появившемся приглашении: cd c:\tasm\bin (тока не спрашивай, кто кого куда приглашает!!!)
7. Вводи: tasm 1.asm
8. Ждешь 5 сек.
9. Вводишь: tlink /t 1.obj
10. Ждешь еще 5 сек.
11. В папке C:\TASM\BIN теперь появился файл 1.com, запускай его и наслаждайся!!!
12. В п.9 если код exe-шный, то /t нада опустить...

p.s. текила - крепкая вещица да?


IDA-декомпрессор тоже пока не трогай...


Отправил эксперт: Broken Sword (ОНПУ, ИКС, АС-991 - )
Эксперт отправил ответов (всего): 277

Экспертная группа: Дизассемблеры

Вопрос №1947

Здравствуйте Ув. Эксперты!
Особый привет Kgm и Broken Sword!!
Вернемся к вопросу № 1929 от Dev.
Код приложения созданный экспертом Kgm полностью рабочий и занимает, после трансляции, 71 байт. Так вот! Я его сократил до 70 байт!!!!!!!!
Дело в следующем: для изучения асма и трансляции простейших прог пользуюсь TURBO EDITASM, очень старой прогой от 1985 года, однако для небольших примеров годиться. Чисто механическое повторение кода эксперта Kgm привело к маленьким нестыковкам, а то и ошибкам. Это подвигло меня на изучение листингов TURBO EDITASM и TASM. Отладчиком прошелся всего-то раз. Так вот: TURBO EDITASM очень старая прога и .286 ... .586 для неё пустой звук. Зато org100h можно не писать. Почему получилось сократить на 1 байт я постараюсь объяснить в приложении. Виновница оптимизации-TURBO EDITASM. Вопрос собственно: как заставить TASM(или там MASM) оптимизировать прогу на байтик иль два, поскольку опции /m2.../m9 ничего не дали. Неужели только ручками! Неужели транслятор TASM туповат или делает все автоматом не задумываясь.
БИОС снял прогой эксперта Kgm(71 байт) и своей(70 байт), затем сделал файлам bios.bin fc /b и не обнаружил различий - доказательство работоспособности моего варианта.
З.Ы. Извините за многословие - это сейчас гордость переполняет и пока она не улетучилась набираю тест:)))
З.Ы.Ы. А что скажет Broken Sword по этому поводу?
С уважением ко всем, Начинающий ламер.

Ответ

Здравствуйте, Начинающий ламер!
Извини, что не сразу отвечаю - был в пути на поезде.
Вообще-то я не стремился оптимизировать код - а просто взял и написал.
Посмотри еще немного код, почитай доку по INT 21H, погоняй в TD и увидешь, что код можно сократить еще на 3-5 байт (сколько - точно я не считал). Для тебя это будет полезной тренировкой. Удачи.


Отправил эксперт: Kgm
Эксперт отправил ответов (всего): 45

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1968

Здравствуйте! У меня почему-то программа сразу выходит при работе с файлами (взял пример из главы 9), пытался корректировать, писал такие же процедуры ожидания, как и в предыдущих главах перед выходом - не помогло.
Может быть вы знаете, в чем дело?

Ответ

Здравствуйте, Андрей!
Какие еще процедуры ожидания??? Смотрим главу 9...
Итак, это пример файла, к-рый открывает сам себя и начинает в самого же себя писать самого себя... Обещают работы на 2 надели. Тут все понятно.

Если у тебя в текущей директории файл less09.com, то после его запуска должно вывестись "Все нормально!". Если же его нет (т.е. он называется не так, а как-нить иначе), то после его запуска ничего выводиться не должно, т.е. пропищать чето по идее всетаки должно... (2-я ф-ция 21h прерывания при dl=7)

А вообще если ты в виндах работаетшь, то нада нажать сначала правой кнопкой на этот com-файл и убрать галочку (светочку, викочку, кому как нравиться) с чекбокса Close on Exit (Закрывать окно при выходе), ато ты ниче не увидишь (хотя это тоже не всегда помогает). Поэтому вобще рекомендуется запускать это все в голом досе, или на худой конец запускай command.com и в этом окне все и запускай


Отправил эксперт: Broken Sword (ОНПУ, ИКС, АС-991 - )
Эксперт отправил ответов (всего): 278

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1975

Скажите, какой монитор лучше брать 17'? (около 300$)

Ответ

Здравствуйте, Artem!
С допуском +/-30 долларов можно предложить Sony A220FD , CTX PR711FL, Ilyama Vision Master Pro 411. Обратите внимание на то, что ЭЛТ-мониторы необходимо тщательно проверить при покупке, и в особенности обратить внимание на качество изображения данного экземпляра, т.к. зачастую сведение лучей монитора может страдать из-за плохой настройки на заводе. Если говорить о каждой модели по отдельности, то их характеристики приблизительно равны, однако стоит отметить, что все-таки Ilyama - это "чистая" японская сборка.


Отправил эксперт: DivX
Эксперт отправил ответов (всего): 96

Экспертная группа: Модели, виды и типы компьютеров (hard)

Вопрос №1983

Здравствуйте!
Давно хочу поместить где-нибудь в инете
свою страничку. Но столкнулся с такой
проблемой: когда я пытаюсь просмотреть
выложенную куда-нить страничку, то
картинки почему-то не отображаются.
Хотя дома всё путём. Пути, ясное дело,
правильно прописал. Может, это они
(хостеры) специально так делают, пока
я ихний баннер не положил себе? Если
так, то как же этот самый баннер положить
куда-нибудь?
З.Ы. Happy New Year!

Ответ

Здравствуйте, Константин!
Вооще они баннер должны сами тебе впарить...а на счет картинок,
ты укзывай имя файла с учетом регистра, т.к там УНИХ стоит...


Отправил эксперт: змей
Эксперт отправил ответов (всего): 153

Экспертная группа: Пользовательская работа с Windows

Вопрос №1980

Здравствуйте!
Существует такой модем - ZyXEL U-1496-EG+
У него какая-то садистская наклонность -
не работать именно у меня. У друга мы его
подключали, звонили - всё путём. А у мне
на разных языках сообщается, что
"нет сигнала в линии". Help!
Универсальный ответ сам знаю.
С уважением, Константин.

Ответ

Здравствуйте, Константин!
неповезло тебе :))


Отправил эксперт: змей
Эксперт отправил ответов (всего): 154

Экспертная группа: Модели, виды и типы компьютеров (hard)

Вопрос №1975

Скажите, какой монитор лучше брать 17'? (около 300$)

Ответ

Здравствуйте, Artem!
17'' SAMSUNG 753DFX FLATNESS <0.2, 50-160Hz, 1280x1024@60Hz
неплохой мониторчик..


Отправил эксперт: змей
Эксперт отправил ответов (всего): 155

Экспертная группа: Модели, виды и типы компьютеров (hard)

Вопрос №1953

Здравствуйте, Эксперты!!!
У меня модем Cptel k56Flex, но он "плохо" розпознаЈт сигнал "занято". Точнее аж через 30-40 секунд после коротких гудков, а потом выдаЈт BUSY. Может есть ATкоманда, которая поможет?????

Ответ

Здравствуйте, Дмитрий!
Что значит АТ комманда???
если звонишь терминалом то набирай типа
ATDP 10810810(или какой там у тебя номер)...если пульсовый набор
ATDT 10810810...если тоновый...


Отправил эксперт: змей
Эксперт отправил ответов (всего): 156

Экспертная группа: Модели, виды и типы компьютеров (hard)

Вопрос №1984

Довольно давно подписан на Ваши рассылки, сначала из любопытства, потом из интереса к внутренним перепетиям (прямо Санта Барбара:-), потом втянулся, хотя в ассемблере ни в зуб, ни ногой. Долго распрастранятся не буду, но начинания Калашникова мне по душе, да и ребята хорошие собрались (по обе стороны почтового сервера). Теперь, чувствую и мне пора вливаться (как говорят, пиши когда не можешь не писать), зазудело где то в мозжечке :-)).
Отсюда вопросец: различия в MASM и TASM, я так понял есть (по разному компилят?), дык какой взять для начала, или какой функциональнее, или просто удобнее? Не думаю, что вопрос принципиальный, но мнение экспертов интересно.
ЗЫ. Отдельный привет Вал.Ик'у: мы не одиноки во вселенной-))

Ответ

Здравствуйте, Victor!
Так прямо сказать не могу, но TASM совместим с поделками Borland (Borlabd C, Borland Pascal) поэтому может он и круче

А все остальное не имеет значения


Отправил эксперт: VD (www.chat.ru/~vdragon_pas/index.htm - Программирование графики на Пакаль со вставками на)
Эксперт отправил ответов (всего): 67

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1983

Здравствуйте!
Давно хочу поместить где-нибудь в инете
свою страничку. Но столкнулся с такой
проблемой: когда я пытаюсь просмотреть
выложенную куда-нить страничку, то
картинки почему-то не отображаются.
Хотя дома всё путём. Пути, ясное дело,
правильно прописал. Может, это они
(хостеры) специально так делают, пока
я ихний баннер не положил себе? Если
так, то как же этот самый баннер положить
куда-нибудь?
З.Ы. Happy New Year!

Ответ

Здравствуйте, Константин!

Не знаю, где Вам вздумало "выложиться", но на Chat.RU всё довольно прозрачно: заливаешь свои страницы и картинки - и всё работает. То же самое можно сказать и про MSNHomePages.TalkSity.COM. Никаких баннеров показывать они не требуют (FreeServers.COM, например, вообще эти баннеры сам в страничку запихивает, гад!).
Значит, можно сделать вывод: что-то у Вас не так в HTML-коде.


Отправил эксперт: Артём Шегеда (www.shegeda.chat.ru - Пристанище неодинокого программиста)
Эксперт отправил ответов (всего): 17

Экспертная группа: Пользовательская работа с Windows

Вопрос №1938

Здравствуйте, Эксперты!!!
При попытке загрузить com файл в TD он ругается говорить что 'Program has no symbol table'. А есле откомпилировать его как exe то TD он берт левые значения всех данных. Что делать?

Ответ

Здравствуйте, Segr!

Компилируй с отладочной информацией... тогда TD не будет ругаться а будет знать значение всех меток...


Отправил эксперт: Dron (http://spawnhole.narod.ru/asmos/asmos.html - Операционная система с нуля!)
Эксперт отправил ответов (всего): 225

Экспертная группа: Работа с MASM/TASM

Вопрос №1983

Здравствуйте!
Давно хочу поместить где-нибудь в инете
свою страничку. Но столкнулся с такой
проблемой: когда я пытаюсь просмотреть
выложенную куда-нить страничку, то
картинки почему-то не отображаются.
Хотя дома всё путём. Пути, ясное дело,
правильно прописал. Может, это они
(хостеры) специально так делают, пока
я ихний баннер не положил себе? Если
так, то как же этот самый баннер положить
куда-нибудь?
З.Ы. Happy New Year!

Ответ

Здравствуйте, Константин!

И все таки проверьте пути. Если они указаны абсолютно
(www.чтоТоТам.угу\картинка.jpg)попробуйте задать их относительно
(\картинка.jpg). Проверьте наличие самих картинок на сервере (некоторые серверы
грешат) и уточните время обновления сервером страниц пользователей ( некоторые
серверы обновляют только через несколько дней ).

С уважением, root.


Отправил эксперт: root
Эксперт отправил ответов (всего): 7

Экспертная группа: Пользовательская работа с Windows

Вопрос №1985

Здравствуйте эксперты!
Надо написать резедентный хранитель экрана. Проблема в следуещем как из своего обработчика прерывания от таймера передать управление на заставку, время ее работы очень большое чтобы выполнить между прерываниями. Неужели надо выгружать свой обработчик, передовать управление на заставку, а после завершения работы заставки снова перехватывать прерывание.

Ответ

Здравствуйте, Serg!

Попробуйте в обработчике хранить флажок - запущена ли заставка.

С уважением, root.


Отправил эксперт: root
Эксперт отправил ответов (всего): 8

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1984

Довольно давно подписан на Ваши рассылки, сначала из любопытства, потом из интереса к внутренним перепетиям (прямо Санта Барбара:-), потом втянулся, хотя в ассемблере ни в зуб, ни ногой. Долго распрастранятся не буду, но начинания Калашникова мне по душе, да и ребята хорошие собрались (по обе стороны почтового сервера). Теперь, чувствую и мне пора вливаться (как говорят, пиши когда не можешь не писать), зазудело где то в мозжечке :-)).
Отсюда вопросец: различия в MASM и TASM, я так понял есть (по разному компилят?), дык какой взять для начала, или какой функциональнее, или просто удобнее? Не думаю, что вопрос принципиальный, но мнение экспертов интересно.
ЗЫ. Отдельный привет Вал.Ик'у: мы не одиноки во вселенной-))

Ответ

Здравствуйте, Victor!

Не знаю, вообще-то это дело вкуса, но я всю жизнь компилил tasm'ом.
Почему? Попробую объяснить.
1. Исторически сложилось. Последнее время это моя любимая фраза. :)
А именно, так как я работал с Turbj Pascal и Borland C++, то прямо оттуда и брал ассемблер. А масм надо было еще откуда-то тащить (а год-то так 93!, кроме ФИДО ничего вроде вокруг и нет!), да еще и устанавливать!

2. Простота установки:
tasm - 4 файла (tasm.exe, tlink.exe + еще какие-то). Прямое копирование + при желании можно прописать пути в autoexec.
masm - какая-то очередная полуавтоматическая инсталляция от Microsoft. Да и размер такой не маленький.

3. Привычка работы с продуктами Borland Inc. и полное отсутствие желания работы с компиляторами Microsoft (навеяно одновременной работой (институтский курс программирования, что б его! ) с Borland C++ 3.1 и Microsoft Quick C 2.5. Та еще гадость, скажу вам! Достаточно сказать, что пока прога компилилась, я с 3-его этажа успевал сходить в буфет на 1-й попить кофейку и вернуться! То же в Борланде делалось на порядок быстрее).

4. Практически полная эмуляция режима MASM. А что еще человеку нужно?
Плюс "режим продвинутых программеров" IDEAL. Я его правда ни разу не пробовал. :)

Вроде все...


Отправил эксперт: Ayl
Эксперт отправил ответов (всего): 129

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1985

Здравствуйте эксперты!
Надо написать резедентный хранитель экрана. Проблема в следуещем как из своего обработчика прерывания от таймера передать управление на заставку, время ее работы очень большое чтобы выполнить между прерываниями. Неужели надо выгружать свой обработчик, передовать управление на заставку, а после завершения работы заставки снова перехватывать прерывание.

Ответ

Здравствуйте, Serg!

А зачем между прерываниями? Проверяешь таймер, определяешь, что надо активизироваться, вызываешь старый обработчик (что б все сделал как надо), разрешаешь прерывания - и вперед! К светлому будущему, т.е. заставке! Контроллер прерываний очищен старым обработчиком, так что беспокоится нечего. Только надо флаг поставить, что заставка активна.


Отправил эксперт: Ayl
Эксперт отправил ответов (всего): 130

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1985

Здравствуйте эксперты!
Надо написать резедентный хранитель экрана. Проблема в следуещем как из своего обработчика прерывания от таймера передать управление на заставку, время ее работы очень большое чтобы выполнить между прерываниями. Неужели надо выгружать свой обработчик, передовать управление на заставку, а после завершения работы заставки снова перехватывать прерывание.

Ответ

Здравствуйте, Serg!

Можно этот хранитель экрана подгружать, но стоит это делать в обработчике перехваченного int 28h (почитай TechHelp). В перехваченном int 1Ch поставь флажок запуска, а в int 28h спокойненько int 21h (ax=4B00h).


Отправил эксперт: Артём Шегеда (www.shegeda.chat.ru - Пристанище неодинокого программиста)
Эксперт отправил ответов (всего): 18

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1975

Скажите, какой монитор лучше брать 17'? (около 300$)

Ответ

Здравствуйте, Artem!
Monitor SAMSUNG 755DFX 222$
или
Monitor SAMTRON 76BDF 226$


Отправил эксперт: Sensey
Эксперт отправил ответов (всего): 245

Экспертная группа: Модели, виды и типы компьютеров (hard)

Вопрос №1981

Снова здравствуйте.
Эксперт Sensey, можно поподробнее о тех
таинственных корпусах CodeGen, которые вы
так советуете? У нас в Омске о таких и
слыхом не слыхивали. Ещё, если не трудно,
киданите прайсик какой-нить вашей тамошней
фирмы мне на ящик. Любопытно, насколько
отличаются цены на железо.
У нас корпусов полно - половина официально
китайские, по 30 президентов (не меньше),
другая половина, хоть и собраны там же, но
носят гордые имена ASUS, Inwin, Genius.
Есть ещё какие-то Chenbro. Эти стоят как
минимум 50, Inwinы и за 100 зашкаливают.

Ответ

Здравствуйте, Константин!
Как я потом поинтересовался, CodeGen имя только у нас, в других местах называются по другому...
Отличительная особеность хорошего корпуса - горизонтальный блок питания мощностью 250 Ватт
Прайсик скинул, он правда старый, середина ноября, сейчас цены на 5-7 проц. выше


Отправил эксперт: Sensey
Эксперт отправил ответов (всего): 246

Экспертная группа: Модели, виды и типы компьютеров (hard)

Вопрос №1982

Здравствуйте!
Есть такое дело - я пытаюсь писать
собственный гамес (с кем не бывает?)
на Паскале. (не ругайтесь громко)
И возникла проблема с монстрами.
Может кто подскажет алгоритм, идею,
как реализовать их поведение?

Ответ

Здравствуйте, Константин!
Почитай книгу "Секреты программирования игр" (автора забыл, выпущена была в 96-98 году в Питере)
там очень хорошо написано.


Отправил эксперт: Sensey
Эксперт отправил ответов (всего): 247

Экспертная группа: Оптимизация программ

Вопрос №1966

Здравствуйте.
Что такое контроль на четность? Байт состоит из 9 битов?

Ответ

Здравствуйте, Warewolf!

Байт в х86 процессоре 8 бит
Контроль по четности - это уже другой бит - к примеру, посылаем приемнику 8 байт информации и 9й контрольный Или 8 бит - 9й контрольный - как обрабатывается ето все - зависит от реализации.
Дальше, как его получить
Этот бит - результат сложения всех битов в байте по модулю 2 (операция XOR - логическое исключающее ИЛИ)
Вот таблица истинности для него
0+0=0
0+1=1
1+0=1
1+1=0
То есть, к примеру возьмем 2 байта от фонаря - делаем контроль по четности
11100110
1+1+1+0+0+1+1+0=1 сложению по модулю 2 дает 1
или такой
11000011
1+1+0+0+0+0+1+1=0 сложение по модулю 2 дает 0 то есть видно невооруженным глазом - нечетное число единиц дает единицу на выходе.
Как можно заметить мы можем проконтролировать только единичную ошибку - двойную уже нет, и мы не знаем в каком разряде она произошла- для этого существуют другие коды коррекции если интересно дальше почитай про линейные коды, как частное из них - коды Хэмминга, итеративные, циклические e.t.c - просто материал достаточно большой чтоб здесь его описывать...
Удачи ! :)



Отправил эксперт: UFO
Эксперт отправил ответов (всего): 63

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1986

Здравствуйте эксперты.
Меня интересует, что получится, если к компьютеру со старой материнской платой под 486DX и биосом AWARD весии 4.50 подключить жесткий диск объемом 20-40Gb. Определится он биосом как 8Gb или не определится вовсе.

Ответ

Здравствуйте, Андрей Руссев!
Если поставить джамперами на винте совместиый режим (на некоторых такое бывает) -- то определится точно. Если нет - то винда, скорее всего поймёт, а вот BIOS - уже очень сомнительно


Отправил эксперт: Sheriff
Эксперт отправил ответов (всего): 16

Экспертная группа: Модели, виды и типы компьютеров (hard)

Вопрос №1988

Существуют ли программы деления писем по 160 символов(для SMSов)? Если да, то где их можно скачать и как использовать?

Ответ

Здравствуйте, Stas!

Ну, если деление писем по N символов относится к оптимизации программ - то я, наверно, переведусь в какую-нибудь другую группу...

А вообще - это программка на Pascal в несколько строк.

Приложение:


Отправил эксперт: Артём Шегеда (www.shegeda.chat.ru - Пристанище неодинокого программиста)
Эксперт отправил ответов (всего): 19

Экспертная группа: Оптимизация программ

Вопрос №1988

Существуют ли программы деления писем по 160 символов(для SMSов)? Если да, то где их можно скачать и как использовать?

Ответ

Здравствуйте, Stas!
я могу написать под заказ :)


Отправил эксперт: Broken Sword (ОНПУ, ИКС, АС-991 - )
Эксперт отправил ответов (всего): 279

Экспертная группа: Оптимизация программ

Вопрос №1984

Довольно давно подписан на Ваши рассылки, сначала из любопытства, потом из интереса к внутренним перепетиям (прямо Санта Барбара:-), потом втянулся, хотя в ассемблере ни в зуб, ни ногой. Долго распрастранятся не буду, но начинания Калашникова мне по душе, да и ребята хорошие собрались (по обе стороны почтового сервера). Теперь, чувствую и мне пора вливаться (как говорят, пиши когда не можешь не писать), зазудело где то в мозжечке :-)).
Отсюда вопросец: различия в MASM и TASM, я так понял есть (по разному компилят?), дык какой взять для начала, или какой функциональнее, или просто удобнее? Не думаю, что вопрос принципиальный, но мнение экспертов интересно.
ЗЫ. Отдельный привет Вал.Ик'у: мы не одиноки во вселенной-))

Ответ

Здравствуйте, Victor!
ТАСМ, ТАСМ и еще раз ТАСМ.
МАСМ - для виндов, ТАСМ - для дела.
Вот так.


Отправил эксперт: Broken Sword (ОНПУ, ИКС, АС-991 - )
Эксперт отправил ответов (всего): 280

Экспертная группа: Общие вопросы по программированию на Ассемблере под DOS

Вопрос №1986

Здравствуйте эксперты.
Меня интересует, что получится, если к компьютеру со старой материнской платой под 486DX и биосом AWARD весии 4.50 подключить жесткий диск объемом 20-40Gb. Определится он биосом как 8Gb или не определится вовсе.

Ответ

Здравствуйте, Андрей Руссев!
Если и определится, то только винт не больше 32 Gb, хотя если перепрошьешь BIOS то любой должен определяться.
На новых винтах больше 32 Гб есть перемычки, к-рые "эмулируют" только 32Gb


Отправил эксперт: Broken Sword (ОНПУ, ИКС, АС-991 - )
Эксперт отправил ответов (всего): 282

Экспертная группа: Модели, виды и типы компьютеров (hard)

Вопрос №1981

Снова здравствуйте.
Эксперт Sensey, можно поподробнее о тех
таинственных корпусах CodeGen, которые вы
так советуете? У нас в Омске о таких и
слыхом не слыхивали. Ещё, если не трудно,
киданите прайсик какой-нить вашей тамошней
фирмы мне на ящик. Любопытно, насколько
отличаются цены на железо.
У нас корпусов полно - половина официально
китайские, по 30 президентов (не меньше),
другая половина, хоть и собраны там же, но
носят гордые имена ASUS, Inwin, Genius.
Есть ещё какие-то Chenbro. Эти стоят как
минимум 50, Inwinы и за 100 зашкаливают.

Ответ

Здравствуйте, Константин!
Если вдруг пропрет узнать цены на комплектухи в Одессе (Украина :), то прошу сюда - www.tid.odessa.ua. От цен, шо на этом сайте можешь смело отнимать 10-15 $ и получишь САМОЕ ДЕШЕВОЕ, ЧТО В ОДЕССЕ МОЖНА ВООБЩЕ ДОСТАТЬ!!!


Отправил эксперт: Broken Sword (ОНПУ, ИКС, АС-991 - )
Эксперт отправил ответов (всего): 283

Экспертная группа: Модели, виды и типы компьютеров (hard)

Вопрос №1982

Здравствуйте!
Есть такое дело - я пытаюсь писать
собственный гамес (с кем не бывает?)
на Паскале. (не ругайтесь громко)
И возникла проблема с монстрами.
Может кто подскажет алгоритм, идею,
как реализовать их поведение?

Ответ

Здравствуйте, Константин!
На мой сугубо личный взгляд - ВО ВСЕХ ГАМЕСАХ - страшнее те монстры, которые громче и жуще кричат, т.е. главное - ЗВУКИ, которые они издают, а графика - дело пятое. Но главное не перестараться.

Так вообще-то я де то читал еще, что самый страшный монстр из всех поражденных человечеством ;) - монстр из игрухи Thief I (Вор, часть первая по русски) (я кода то ей болел, кстати, классная игруха) - так вот он появляется дето в последних уровнях и вообще похож на... дерево! (страшно?) зато кричит и вопит - дай боже (особенно когда, знаешь ли, ночью играешь, были даже случаи с поломанными клавами у друзей) вот так вот


Отправил эксперт: Broken Sword (ОНПУ, ИКС, АС-991 - )
Эксперт отправил ответов (всего): 284

Экспертная группа: Оптимизация программ

Форма подачи вопроса

ВНИМАНИЕ!!! Пожалуйста, НЕ высылайте один вопрос сразу нескольким подгруппам! Дополнения к вопросам, на которые эксперт уже ответил НЕ следует направлять ведущему рассылки (я не успеваю!). Просто скомбинируйте первый вопрос и дополнение к нему, а затем заново отправьте его, используя приведенную ниже форму!

Нажимайте кнопку "Отправить" только ОДИН раз и дождитесь полной загрузки страницы, иначе вопрос будет продублирован!


Ваше имя *:

Ваш e-mail *:

Подгруппы:

Вопрос *:

Прилагаемая программа (если необходимо):


Регистрация в качестве эксперта

Архив выпусков


Управляющий рассылкой,

Калашников Олег: Assembler@Kalashnikoff.ru
ICQ No.:
68951340
URL сайта подписчиков: http://www.Kalashnikoff.ru

Рассылка 'Ассемблер? Это просто! Учимся программировать (FAQ)' Рассылка 'Ассемблер? Это просто! Учимся программировать'


(C) Москва, 2001. Авторское право принадлежит Калашникову О.А. Публичное размещение материала из рассылки, а также его использование полностью или частично в коммерческих или иных подобных целях без письменного согласия автора влечет ответственность за нарушение авторских прав.


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное