Родились сегодня:
FOXhunter


Лидеры рейтинга

ID: 259041

Алексеев Владимир Николаевич

Мастер-Эксперт

313

Россия, пос. Теплоозёрск, ЕАО


ID: 401284

Михаил Александров

Советник

302

Россия, Санкт-Петербург


ID: 400669

epimkin

Профессионал

248


ID: 405049

vsetin

Студент

159


ID: 137394

Megaloman

Мастер-Эксперт

120

Беларусь, Гомель


ID: 325460

CradleA

Мастер-Эксперт

76

Беларусь, Минск


ID: 226425

Konstantin Shvetski

Модератор

71

Россия, Северодвинск


8.9.7

28.07.2021

JS: 2.9.14
CSS: 4.5.14
jQuery: 3.6.0
DataForLocalStorage: 2021-07-31 21:16:01-standard


 
   
Страница блогов участника
ID: 17042

Страница блогов участника
Андрей Кузнецов aka Dr_Andrew (Старший модератор)

Запись
общий доступ | 18.06.2010, 13:12 (4061 сут. 21 час. 16 мин. назад) | комментарии (2) »

автор: Андрей Кузнецов aka Dr_Andrew (Старший модератор)  |  страница участника Андрей Кузнецов aka Dr_Andrew страница участника  |  главная страница блогов главная

Попробовал NASM, поприветствовал мир

Ну вот и свершилось, решил познакомиться с ассемблером. smile
Набросал "на коленке", варя параллельно гороховый суп с бараниной и перцем smile :

Код
global main
extern printf

section .data
Message:
    db 'Привет, мир!', 10, 13

section .text
main:
    push Message
    call printf
    add esp, 4
    ret


Ура, работает! Думаю теперь, нужно ли число 13 в строке "db 'Привет, мир!', 10, 13": в Linux и без перевода каретки всё работает.



И под Win32 тоже (хотя не сразу сообразил, что Windows, в отличие от Linux'а, не имеет printf, но ничего, обошёлся _printf:



Чертовски не хватает внятного пошагового руководства для новичка.
Кстати, вопреки утверждению Криса Касперски в журнале "Xakep", отладчик для ассемблера в Linux есть. И даже с графическим интерфейсом пользователя. Это Evan's Debugger (EDB). Написан, разумеется, с использованием Qt. smile
Для простейших программ, вроде этой:

Код
global main

section .text
main:
    mov eax, 2
    add eax, 2


даже и регистры смотреть не нужно:

Комментарии

Лысков Игорь Витальевич
Мастер-Эксперт

ID: 7438

# 1

= общий = | 18.06.2010, 21:32  | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

А мир приветствует новых исследователей и приверженцев ассемблера smile smile

=====
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен

Андрей Кузнецов aka Dr_Andrew
Старший модератор

ID: 17042

# 2

= общий = | 19.06.2010, 05:53  | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

smile
С удивлением обнаружил, что для NASM не найти знаменитого примера "нажмите любую клавишу, чтобы выйти..." smile Ну да ладно, будем искать.

=====
We have but faith: we cannot know;
For knowledge is of things we see;
And yet we trust it comes from thee,
A beam in darkness: let it grow.
-----
https://www.linkedin.com/in/andreynkuznetsov
https://www.researchgate.net/profile/Andrey_Kuznetsov11
http://www.researcherid.com/rid/K-8824-2014

Комментирование запрещено для гостей. Если Вы зарегистрированы в системе RFpro.ru - введите свои регистрационные данные в поля вверху страницы. Если Вы еще не зарегистрированы - пройдите простую процедуру регистрации.