Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz

06.04.2008, 18:59
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме: 4037638
Репутация:
1821
|
|
Установи себе emu8086 и радуйся жизни 
|
|
|

06.04.2008, 19:56
|
|
Познающий
Регистрация: 15.12.2007
Сообщений: 38
Провел на форуме: 71979
Репутация:
18
|
|
Я установил себе ФАСМ
|
|
|

06.04.2008, 23:29
|
|
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
Провел на форуме: 2360904
Репутация:
1393
|
|
Сообщение от Manoff
Я установил себе ФАСМ
Масм и Фасм это не одно и тоже.
|
|
|

06.04.2008, 23:59
|
|
Познающий
Регистрация: 15.12.2007
Сообщений: 38
Провел на форуме: 71979
Репутация:
18
|
|
Да , я знаю , но и тот и другой отказываются компелить код
Код:
CSEG segment
org 100h
Begin:
mov ah,9
mov dx,offset Message
int 21h
int 20h
Message db 'Hello, world!$'
CSEG ends
end Begin
Код взят из Калашникова я проблему не понимаю , а компел просто показывает что в этом коде ошибка.
Последний раз редактировалось Manoff; 07.04.2008 в 00:03..
|
|
|

07.04.2008, 00:18
|
|
Участник форума
Регистрация: 25.05.2007
Сообщений: 290
Провел на форуме: 1740746
Репутация:
435
|
|
Сообщение от Manoff
Да , я знаю , но и тот и другой отказываются компелить код
Код:
CSEG segment
org 100h
Begin:
mov ah,9
mov dx,offset Message
int 21h
int 20h
Message db 'Hello, world!$'
CSEG ends
end Begin
Код взят из Калашникова я проблему не понимаю , а компел просто показывает что в этом коде ошибка.
для Manoff
код работает , компилировала в emu8086
|
|
|

08.04.2008, 20:33
|
|
Moderator - Level 7
Регистрация: 17.05.2007
Сообщений: 220
Провел на форуме: 3013539
Репутация:
441
|
|
Сообщение от Manoff
Да , я знаю , но и тот и другой отказываются компелить код
Код:
CSEG segment
org 100h
Begin:
mov ah,9
mov dx,offset Message
int 21h
int 20h
Message db 'Hello, world!$'
CSEG ends
end Begin
Код взят из Калашникова я проблему не понимаю , а компел просто показывает что в этом коде ошибка.
хм, как правило masm ругается на отсутсвие директивы assume, если будешь дальше читать по Калашникову (между прочим неплохая книга, для новичка) то пиши так для компилов 4.х и 5.х :
Код:
CSEG segment
assume cs:cseg, ds:cseg, ss:cseg, es:cseg
org 100h
Begin:
mov ah,9
mov dx,offset Message
int 21h
int 20h
Message db 'Hello, world!$'
CSEG ends
end Begin
и так для 6.11 (и наверно более поздних версий до 6.15):
Код:
CSEG segment 'CODE'
assume cs:cseg, ds:cseg, ss:cseg, es:cseg
org 100h
Begin:
mov ah,9
mov dx,offset Message
int 21h
int 20h
Message db 'Hello, world!$'
CSEG ends
end Begin
А еще смотри не перепутай компиляцию для exe и com, com это как правило ключ T/ при линкеровке.
Плюс, далее предупреждая возможные вопросы =), прямое отображение в видеобуфер из-под wincmd работает не корректно (вернее нужные данные загружаются, но далеко не всегда отображаются)
И вообще мой совет перед Калашниковым и другими практическими книгами почитать теорию аля Пильщиков В.Н. Assembler (на мой взгляд офигенная книга для начинающего).
зы. Пильщиков ведет в МГУ на ВМиК, так что мужик свой =) Кому надо могу скинуть лекции в печатном виде другого ВМКшного препода по асму, там теория + отличные практические примеры.
Последний раз редактировалось VERte][; 08.04.2008 в 20:35..
|
|
|

07.04.2008, 09:05
|
|
Постоянный
Регистрация: 20.08.2006
Сообщений: 327
Провел на форуме: 2472378
Репутация:
1077
|
|
Да , я знаю , но и тот и другой отказываются компелить код
Естественно некомпилится.. Это из-за несовместимости трансляторов! Ассемблер - это не только мнемоники, но еще и синтаксис транслятора: макросы, дерективы и тд, и тп
Просто даже среди ассемблеров одного типа большой разброд: различие в ключевых словах, в правилах оформления листинга, библиотеках, хидерах..
Тоесть чтобы скомпилировать код Калашникого, тебе нужно переделать его под свой компилятор.. Ты выбрал FASM.. ну так бери справочники и туторы по нему..
А твой код на fasm будет выглядить так:
Код:
org 100h
use16
mov ah,9
mov dx,hello
int 21h
int 20h
hello db 13,10,'Hello,world$'
|
|
|

07.04.2008, 22:18
|
|
Участник форума
Регистрация: 30.09.2006
Сообщений: 134
Провел на форуме: 352963
Репутация:
197
|
|
Manoff
Приучай себя сразу записывать числа не просто 9 а например 09h просто правило хорошего тона. конечно по дефолту асм знает что это hex - но всё же...
|
|
|

07.04.2008, 22:42
|
|
Познающий
Регистрация: 15.12.2007
Сообщений: 38
Провел на форуме: 71979
Репутация:
18
|
|
Да я уже понял , все отладчики в hex'е работают , но не все пишут h в конце =)), я так пару раз лохонулся .
TAHA я уже покопался и нарыл статьи об особенностях , спасибо.
Последний раз редактировалось Manoff; 07.04.2008 в 22:44..
|
|
|

08.04.2008, 16:24
|
|
Познающий
Регистрация: 15.12.2007
Сообщений: 38
Провел на форуме: 71979
Репутация:
18
|
|
А справочника по прерываниям и командам процессора у кого-нить есть?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|