JeisonWi
а в случае ассемблерных вставок так и вообще рядом не стоит - clang поддерживает большую часть возможностей GAS/GCC
JeisonWi
https://marketplace.visualstudio.com/items?itemName=LLVMExtensions.llvm-toolchain
JeisonWi
firther
А нет ли часом нормального образа эмулятора windows3.0?
Dolphin
Ask
JeisonWi
JeisonWi
Clang-cl - поддерживает
Dolphin
https://archive.assembly.org/2018
Aiwan \ (•◡•) / _bot
интересно кому?
Aiwan \ (•◡•) / _bot
Требуется специалист.
Нужно сравнить работу функции WINAPI (в отладчике по дизассемблеру) и ее версии из Wine, которая падает с исключением при вызове с теми же аргументами.
Потраченное время готов компенсировать, прошу прощения, если не по теме.
Aiwan \ (•◡•) / _bot
PathlsUNCServerShareW
Aiwan \ (•◡•) / _bot
Повторюсь, потраченное время компенсирую
Dolphin
Dolphin
Не на ассемблере, но оч хороша.
oles
никому ваш асемблер не интересен
oles
это типа подкол
Marsel
Для простого программиста поверхностного может особо и не нужно
Eugene
Сейчас увлеченные функциональным программированием строят 7-10-этажные башни из filter.map.reduce.zip.fuck.hug.shit и т.д., не понимая как это работает и где генерируется массив, а где нет. И там, где можно использовать просто итератор, создают гигантские массивы, которые не только память отнимают, но и время на их создание :))
Но это всё же новички в основном, справедливости ради стоит заметить.
Ivan
JeisonWi
Vyacheslav
Vyacheslav
Для поддержки версионирования. Иначе весь массив бы копировался целиком при единственном изменении.
Anonymous
Это называется persistent data structures и есть далеко не везде
Anonymous
Более популярен подход с lazy структурами
Ivan
Anonymous
Забавный вопрос, но вдруг есть у кого есть реализация шифрования гронсфельда на асме?)
Задание на экзамене?
Anonymous
Не ну как. Зачет)
Я то знаю как, просто с интерфейсом намаялся. Почему то когда тягаешь сишные функции из msvcrt с регистрами при их вызове (тот же printf) творится невиданная херь
Anonymous
А дебажить лень. Подумал а вдруг здесь у кого валяетчя семпл
Anonymous
Херь это вроде
Mov eax, 15
Mov ebx, eax
Принт ebx
И в ebx ни разу не 15 а какое-нибудь 35
Vladimir
Почему в Windows не работает такой код?
_check_instr_presence: push dword ptr offset bad_entry
push dword ptr fs:[0]
mov fs:[0],esp
ud2 ; Or some other instruction to check
pop dword ptr fs:[0]
lea esp,[esp+4]
mov eax,1
ret
bad_entry: mov esp,fs:[0]
pop dword ptr fs:[0]
lea esp,[esp+4]
xor eax,eax
ret
s54820
Vladimir
Eugene
Anonymous
Лютый говнокод, скажите плз что поправить надо)
Anonymous
https://pastebin.com/9cDrfQ2Q
Anonymous
Соре, коменты перетер
Eugene
Где проблема-то? 55-я строка?
Так, там же регистры не сохраняются перед вызовом printf (который, кстати, нужно вызывать через cinvoke, а не invoke)
Eugene
По соглашению немодицифируемые регистры - esi, edi, ebp. Ну и esp, естественно (если не считать удаление параметров в не-сишных функциях).
Eugene
Всё остальное нужно сохранять push/pop.
Eugene
Ну или заменить ecx на edi
Anonymous
А
Т.е. если я их не запушил в стек
То после выхода из printf они каверкаются и досвидули?
Eugene
Да: eax, edx, ecx. Ну и xmm, ymm туда же (если это не x64). Флаги (кроме df и нкоторых других).
Aiwan \ (•◡•) / _bot
Всем мироточить, тут Иоанн!
Dolphin
Мурёнок )
🌸Man, I love floppa🌷
Видел я уже бота с такой аватарой...
Eugene
Где «вон»?
Eugene
Кстати, есть какой-то асм, вернее нечто типа препроцессора, запускающего fasm (кажется), реализующий некоторое подобие ооп. Сырая поделка, конечно. Названия не помню.
JeisonWi
ООП можно и на чистом ассемблере реализовать - это не проблема
JeisonWi
Вопрос только зачем?
bilka00
Еще есть вебсерверный асм )
Eugene
Вроде да, он
bilka00
какие только не бывают извращенцы
bilka00
иногда они хуже любого натурала )
bilka00
Моем имхо в связи с моими задачами таково что асм должен оставаться асмом что максимально приближен к машинному варианту
bilka00
с минимумом макросов и упрощений
bilka00
такой код лично мне проще всего читать/писать
bilka00
не
bilka00
это те кто протыкают перфокарты
bilka00
JeisonWi
себе...
🌸Man, I love floppa🌷
С Новым годом, коллеги!
Vyacheslav
MOV EAX, Year
INC EAX