самое начало asm подскажите новечку (
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
самое начало asm подскажите новечку ( - 2008-04-03 00:29:10.390000
|
|
|
Bir
Сообщений: 40
Оценки: 0
Присоединился: 2007-08-25 15:57:43.236666
|
Заранее прошу прощения за назойливость и тупые вопросы ( У меня возможно самая тупая проблема в истории ассамблера ( начав читать самоучитель по асм вроде все понятно достаточно просто )) но вот какая проблема приведены примеры скажем самый простой: CSEG segment org 100h Begin: mov ah,9 mov dx,offset Message int 21h int 20h Message db 'Hello, world!$' CSEG ends end Begin должен якобы вывести надпись "привет мир" но вот проблема то что после компиляции он этого неделает (открывая окно командной строки и все) и вот такой вопросик : это неправельный код глюченый компилятор или еще что ?? подскажите пожалуйста ?? Заранее спасибо!
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-04-03 00:44:39.223333
|
|
|
Mkey
Сообщений: 3426
Оценки: 0
Присоединился: 2006-03-08 14:32:13
|
послушай совета…. чтоб не наступать на грабли…. ставишь се виртуальную машину с досом 6,22 и там проводишь все свои эксперименты…. quote:
CSEG segment org 100h Begin: mov ah,9 mov dx,offset Message int 21h int 20h Message db 'Hello, world!$' CSEG ends end Begin а нахрена там 20е прерывание? отставить….. все правильно….. пробуй кампилять и стартовать с чистого доса… файл вроде комовский… ща лень справочник рыть .. а так не помню … мож ключик для комовского нужен…
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-04-03 01:02:46.370000
|
|
|
Bir
Сообщений: 40
Оценки: 0
Присоединился: 2007-08-25 15:57:43.236666
|
спасибо большое ))) а вот етот пример скопировон полностью из книжки 0странно что там неправельно )) хотя в наше время…..
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-04-03 01:09:48.593333
|
|
|
Mkey
Сообщений: 3426
Оценки: 0
Присоединился: 2006-03-08 14:32:13
|
да я же сказал вроде праильно… если до затря сам не разберёсси вечером стучи в асю вместе "забадаем" твой трабл… ща некада работы до задницы…
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-04-03 03:15:08.920000
|
|
|
VViskas =[O_o]=
Сообщений: 145
Оценки: 0
Присоединился: 2008-01-01 02:25:50.893333
|
Под дос эмулом все норм прет! ЗЫ: Юзаю - DOSBox v0.70
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-04-03 03:20:55.906666
|
|
|
VViskas =[O_o]=
Сообщений: 145
Оценки: 0
Присоединился: 2008-01-01 02:25:50.893333
|
[delete]
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-09-12 01:30:47.673333
|
|
|
GamerPro
Сообщений: 12
Оценки: 0
Присоединился: 2008-07-06 21:04:45.466666
|
надо же…не тебе одному такой пример попался)один и тот же мануал видимо юзаем…у мню кста тож не запускалося(
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-09-12 08:42:22.963333
|
|
|
mactep.Black
Сообщений: 6065
Оценки: 678
Присоединился: 2008-02-28 13:01:19.656666
|
а какой ман юзаете то?
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-09-12 19:26:04.343333
|
|
|
adex111
Сообщений: 102
Оценки: 0
Присоединился: 2008-07-22 06:18:43.256666
|
непонял вопрс
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-10-13 06:12:18.666666
|
|
|
kolPeeX
Сообщений: 1456
Оценки: 0
Присоединился: 2007-01-25 14:57:57.683333
|
Думаю, ты неправильно собираешь исходник.
оффтоп На NASM все проще
org 100h
mov ah,9
mov dx,message
int 21h
ret
message db 'Hello, world!$'
nasm -o hello.com hello.asm
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-10-14 22:23:28.276666
|
|
|
Sunzer
Сообщений: 253
Оценки: 31190
Присоединился: 2007-06-15 19:23:32.436666
|
Это пример для доса, вот для винды: ps есть лишние подключенные модули убирать впадлу =) .586
.model flat, stdcall
option casemap :none
include \MASM32\INCLUDE\windows.inc
include \MASM32\INCLUDE\kernel32.inc
include \MASM32\INCLUDE\shell32.inc
include \MASM32\INCLUDE\masm32.inc
include \MASM32\INCLUDE\user32.inc
includelib \MASM32\LIB\kernel32.lib
includelib \MASM32\LIB\shell32.lib
includelib \MASM32\LIB\user32.lib
includelib \MASM32\LIB\masm32.lib
.DATA
od db ":)"
.CODE
START:
invoke MessageBox,0,ADDR odin,NULL,64
invoke ExitProcess,0
END START
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-10-14 22:26:34.870000
|
|
|
Pashkela
Сообщений: 3756
Оценки: 736
Присоединился: 2007-01-03 06:19:40.900000
|
+, не путайте ASM досовский и виндовский
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-10-14 22:42:05.486666
|
|
|
Sunzer
Сообщений: 253
Оценки: 31190
Присоединился: 2007-06-15 19:23:32.436666
|
quote:
ORIGINAL: Pashkela +, не путайте ASM досовский и виндовский асм и в африке асм, не нужно путать синтаксис, а так же в досе прерывания а в винде api
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-10-15 16:40:55.016666
|
|
|
kolPeeX
Сообщений: 1456
Оценки: 0
Присоединился: 2007-01-25 14:57:57.683333
|
а вообще нахера изучать досовские функции?! получаете стандратные указатели i/o и работаете с консолью
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-11-01 09:26:49.726666
|
|
|
ZoAs
Сообщений: 10
Оценки: 0
Присоединился: 2008-10-31 09:25:31.133333
|
Проблема думаю не решена ещё? Приветствие выводится, но окно сразу после этого закрывается. Используем функцию 10h прерывания 16h (ожидание нажатия клавиши). CSEG segment
org 100h
Begin:
mov ah,9
mov dx,offset Message
int 21h
mov ah,10h
int 16h ; в этом месте DOS будет ждать клавишу, и лишь затем закончит программу
int 20h
Message db 'Hello, world!$'
CSEG ends
end Begin
quote:
а какой ман юзаете то? Судя по тексту программы, этот: http://www.kalashnikoff.ru/Assembler/
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-11-01 09:48:01.500000
|
|
|
Flint_ta
Сообщений: 3720
Оценки: 1120
Присоединился: 2007-01-26 15:49:18.323333
|
Объясните мне где сейчас применяется ассемблер под дос? Имхо не практично - лишняя трата времени. Если решили изучать асм прогайте сразу под win32 и api
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-11-01 10:22:08.670000
|
|
|
ZoAs
Сообщений: 10
Оценки: 0
Присоединился: 2008-10-31 09:25:31.133333
|
Может быть. Кто как материал освоить может… Мне кажется очень полезным программирование под дос. Большинство одноклассников в школе (да почти все) не могли понять как программировать в QBasic и TurboPascal, а их родители на собраниях жаловались: "Зачем их заставляют учить такие старые языки, когда есть намного продвинутей"… Нужно уметь программировать под простыми ОС, тогда легче видеть её структуру и принципы работы. А в ассемблере это важно (хотя может только для меня?).
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-11-01 10:24:27.890000
|
|
|
Mkey
Сообщений: 3426
Оценки: 0
Присоединился: 2006-03-08 14:32:13
|
quote:
Объясните мне где сейчас применяется ассемблер под дос? в самодельных САУ. quote:
Нужно уметь программировать под простыми ОС, тогда легче видеть её структуру и принципы работы. А в ассемблере это важно (хотя может только для меня?). мое ИМХО - вышеозвученное -> истина.
|
|
|
RE: самое начало asm подскажите новечку ( - 2008-12-03 06:46:28.346666
|
|
|
MiXALbI4
Сообщений: 20
Оценки: 0
Присоединился: 2008-01-28 03:13:01.290000
|
;для Tasm'а под Win все просто: .model small ;модель памяти .stack 256 ;cмещение .386 ;проц .data ;объявление переменных (начало сегмента данных) message db "Hello, World!",10,13,"$" ;10,13 - перевод каретки, $ - символ ;конца строки .code ;начало сегмента кода main: ;точка входа mov ax, @data ;настройка ds на начало сегмента данных mov ds, ax ;как высчитывается адрес @data - до сих пор не ;понимаю, никак до гугла не долезу :-) lea dx, message ; в dx записываем адрес начала строки mov ah, 9 ;9 - подфункция 21го прерывания, кот. отвечает за ;вывод cтроки на экр. при условии, что dx содержит ;ее адрес int 21h ;вызов 21го прерывания mov ah, 4ch ; 4c - подфункция 21го прерывания, кот. отвечает за ; выход программы int 21h ;вызов 21го прерывания end main
|
|
|
RE: самое начало asm подскажите новечку ( - 2009-05-06 19:19:17.663333
|
|
|
Coolzoom
Сообщений: 40
Оценки: 0
Присоединился: 2008-11-05 02:32:34.956666
|
ЭЭЭ я тоже пока только новичек в асме… кто нить дайте ссыль на мануал в котором по подробнее описываются рагистры флагов, сегментрые регистры, условные переходы типа jc, jnc,jz и т.д. только чтоб не на буржуйском и не особо длинно (не растекаясь мысль по древу)
|
|
|
RE: самое начало asm подскажите новечку ( - 2009-06-17 20:06:56.710000
|
|
|
Meliborn
Сообщений: 294
Оценки: 0
Присоединился: 2009-06-17 16:06:59.840000
|
wasm.ru Лучшего вроде пока не находил.
|
|
|
RE: самое начало asm подскажите новечку ( - 2009-06-21 12:01:26.616666
|
|
|
FriLL
Сообщений: 2539
Оценки: 335
Присоединился: 2007-08-11 17:14:26.703333
|
quote:
ORIGINAL: Meliborn wasm.ru Лучшего вроде пока не находил. http://www.insidepro.com/kk/144r.shtml
|
|
|
RE: самое начало asm подскажите новечку ( - 2009-07-24 17:23:05.713333
|
|
|
ashvin
Сообщений: 10
Оценки: 0
Присоединился: 2009-07-24 15:54:31.073333
|
По асму достаточно мануала на criticalhack.net.
|
|
|
RE: самое начало asm подскажите новечку ( - 2009-07-24 18:20:46.843333
|
|
|
ashvin
Сообщений: 10
Оценки: 0
Присоединился: 2009-07-24 15:54:31.073333
|
Ты всего скорее слинковал .exe файл.А для эксешника одного сегмента мало. Ассемблирование и линковка .COM файла для TASM: C:\BORLANDC\BIN>tasm hello.asm C:\BORLANDC\BIN>tlink hello.obj /t .COM файл для MASM: C:\BORLANDC\BIN>masm hello.asm /AT
|
|
|
RE: самое начало asm подскажите новечку ( - 2009-07-27 18:48:46.046666
|
|
|
Denaturat
Сообщений: 1741
Оценки: 453
Присоединился: 2008-10-27 20:50:06.380000
|
quote:
ORIGINAL: ZoAs Нужно уметь программировать под простыми ОС, тогда легче видеть её структуру и принципы работы простота не означает качества, а (Q)DOS = Quick and Dirty OS, что как бы намекает,- и это кроме, собственно, некрофилии для учебных целей есть прекрасный Minix - живой, документированный и стандартный; на поиграться с низкоуровневым программированием есть MIX (MMIX) Кнута
|
|
|
|
|