Первая программа на ассемблере.
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.223] |
|
|
Перед отправкой сообщения внимательно прочтите правила раздела!!!

| Страницы: (5) 1 [2] 3 4 ... Последняя » все ( Перейти к последнему сообщению ) |
Первая программа на ассемблере.
|
Сообщ.
#16
,
|
|
|
|
ни машинные кода, ни привет мир, ни солидный проект.. Просто написал на листике формулу и начал ее кодить на асме. Проверял в турбодебагере т.к. вывод символов еще не знал как делать на асме
|
|
Сообщ.
#17
,
|
|
|
|
Цитата e-moe @ Просто написал на листике формулу и начал ее кодить на асме. Такой вариант даже в голову не пришел Хоть кто то "по правилам" сделал |
|
Сообщ.
#18
,
|
|
|
|
Цитата AndNot @ Такой вариант даже в голову не пришел Хоть кто то "по правилам" сделал ![]() просто асм был не первым языком программирования который я учил... |
|
Сообщ.
#19
,
|
|
|
|
AndNotчто-то, только заметила тему
, а что первое... ты прикинь не помню |
|
Сообщ.
#20
,
|
|
|
|
Первую прогу, на асме, helloworld, набирал в Hiew'e 6.11 (не такие уж и машкоды), дивясь причудам x86-ой архитектуры
|
|
Сообщ.
#21
,
|
|
|
|
Ну ребята, на Вас всех вариантов не предусмотришь
|
|
Сообщ.
#22
,
|
|
|
|
Цитата AndNot @ Ну ребята, на Вас всех вариантов не предусмотришь ну "непомню" могбы предусмотреть |
|
Сообщ.
#23
,
|
|
|
|
И на меня варианта нет. Я asm изучал по журналу "КомпьютерПресс", а первая программа была не "Hello, world", но и не серьёзный проект - оседала резидентом и после запуска NCMAIN.EXE переназначала синий цвет в палитре. Просто на мониторе с градациями серого плохо видно было
|
|
Сообщ.
#24
,
|
|
|
|
Всем спасибо
|
|
Сообщ.
#25
,
|
|
|
|
Цитата adrax @ Я начал постижение ассемблера с вывода простого MessageBox. Под DOS я асмом не увлекался А жаль. Имеет ли ассемблер большой смысл под Windows, для меня этот вопрос весьма сомнителен. MessageBox с таким же успехом можно и на Си вызвать, как и создания окон, кнопочек и всего интерфейса вообще. |
|
Сообщ.
#26
,
|
|
|
|
Цитата да можно ваще на скрипте бэйсика *.vbs непомню только как как и создания окон, кнопочек и всего интерфейса вообще. |
|
Сообщ.
#27
,
|
|
|
|
Цитата old_lamer @ А жаль. Кодинг под дос дает немало знаний по железу и внутреннему устройству компа, по принципам его работы и взаимодействию перефирии. Это очень сильно облегчает жизнь даже в вин АПИ ![]() Цитата old_lamer @ А почему бы и нет? На АПИ асм использоать так же легко как и Си, разницы никакой. Но всегда найдется место для оптимизации. Вот виденный мной на днях код(привожу по памяти):Имеет ли ассемблер большой смысл под Windows, для меня этот вопрос весьма сомнителен. ![]() ![]() function Alloc(var pBuff: array of Pointer; var hBuff: array of THandle; bufSize, NumBuff: Integer): Boolean; var i: Integer; begin for i := 0 to NumBuff-1 do begin hBuff[i] := GlobalAlloc(GMEM_MOVEABLE or GMEM_SHARE or GMEM_ZEROINIT, bufSize); if hBuff[i] = 0 then begin Alloc := FALSE; Exit; end; pBuff[i] := GlobalLock(hBuff[i]); if pBuff[i] = nil then begin Alloc := FALSE; Exit; end; end; Alloc := TRUE; end; ![]() ![]() Alloc proc NumBuff: dword, BufSize: dword uses ebx, edi mov ebx, NumBuff mov eax, BufSize add eax, 4 mul ebx invoke GloballAlloc, GMEM_FIXED or GMEM_ZEROINIT, eax .if (eax != NULL) push eax mov edi, eax lea eax, [eax+ebx*4] .while (ebx != 0) stosd add eax, BufSize dec ebx .endw pop eax .endif ret Alloc endp ![]() В общем есть где развернуться. Цитата Дьяволица @ Можно да можно ваще на скрипте бэйсика *.vbs непомню только как Но смысл? Кстати, если вспомнишь - черкни пожалуйста |
|
Сообщ.
#28
,
|
|
|
|
![]() ![]() MsgBox "Hello, World!" ну и так далее только можно с параметрами и многие апи функции Добавлено Цитата ну типа в тему и ответ что зачем тогда в си когда можно ваще так Можно Но смысл? |
|
Сообщ.
#29
,
|
|
|
|
Цитата Дьяволица @ MsgBox "Hello, World!" переименовывем в *.vbs и воля ![]() насколько я помню, создать окна и их оконные функции так не получится |
|
Сообщ.
#30
,
|
|
|
|
Цитата e-moe @ правда ? насколько я помню, создать окна и их оконные функции так не получится а я думала можно а откуда ты это помнишь ? |