| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Asm для начинающих > Не получается Hello World |
| Автор: rainbow86 15.12.2005, 20:47 |
| Пытаюсь написать свою первую программу, но что-то не выходит! Использую MASM32. Вот код: CSEG segment org 100h Start: mov ah,9 mov dx,offset String int 21h int 20h String db 'Hello World! $' CSEG ends end Start Выдает ошибку при линковании: hello.obj: fatal error lnk1190: invalid fixup found, type 0x0001 |
| Автор: makwen 15.12.2005, 21:33 |
| .model small .data string db "HELLO WORLD$" .code start: mov ax,@data mov ds,ax mov ah,09h lea dx,string int 21h mov ah,04ch int 21h end start end |
| Автор: Akina 15.12.2005, 22:20 |
| или линкуй в СОМ-файл... |
| Автор: SergeCpp 16.12.2005, 10:19 |
| Да возьми FASM — там и примеров простых много... http://flatassembler.net/index.php |
| Автор: Janus 16.12.2005, 17:36 | ||
|
| Автор: rainbow86 16.12.2005, 18:06 |
| Ни первый ни второй примеры не прошли. В первом выдает ошибку: undefined symbol : DGROUP хотя его в коде нету Во втором выдыет такую же ошибку как у меня прежде??? Счас попробую с FASM |
| Автор: rainbow86 16.12.2005, 18:51 |
| Очень интересно в FASM работает но без всяких там сегментов и т.д. org 100h Begin: mov ah,9 mov dx, Message int 21h int 20h Message db 'Hello, world! $' Получается для всех этих MASM FASM TASM надо писать по разному, или есть то что одинаково во всех этих assembler'ах? И какой из этих ассемблеров заслуживает большего внимания? Может кто объяснит, а то я уж ничего не понимаю! |
| Автор: Janus 17.12.2005, 17:50 |
| Да, синтаксис несколько различается для всех асмов. На мой взгляд, наиболее удачен FASM. Да ты и сам увидел, насколько с ним все проще. |
| Автор: rainbow86 18.12.2005, 16:03 |
| Ладно попробую поработать в FASM. Всем спасибо! |
| Автор: Siborn 18.12.2005, 20:44 |
| пиши в фаре как я ) а компиль тасмом и тлинком, которые идут с паскалем ) |
| Автор: Mephistopheles 18.12.2005, 20:57 |
| rainbow86 TASM юзай. А вообще у всех компилеров свои замуты, но смотря как компилишь ещё. Твой пример самый первый отлично откомпилится TASM'ом в *.com файл. |
| Автор: wiskas 22.12.2005, 02:26 | ||
По моему это все коды программ для доса и в винде нужен вот этот
Опции линковки:для MASM32 ML.exe /c /coff prog.asm LINK.exe /subsystem:windows prog.obj |
| Автор: wiskas 22.12.2005, 02:28 |
| не забудь в строках 4-8 прописать полный путь к МАСМ32 |
| Автор: Mephistopheles 22.12.2005, 18:03 |
| wiskas Нет, Месье, вы заблуждаетесь! Лично пишу под виндой, через ФЫР работаю. правда, например, адрес видеобуффера смещён, но вообщем - пашет. Как я уже и говорил. |