Ян
Может немного выпал с этой темы, только вот новых инструментов что не встречал.
Leon
Я тут с таким приколом столкнулся. Код работает интеле х64, а на АМД Рязанях падет в сегфолт
Ухты. Давай подробнее! На какой инструкции падает при каких условиях и тд.
Aiwan \ (•◡•) / _bot
Ухты. Давай подробнее! На какой инструкции падает при каких условиях и тд.
он всего лишь своей новостью поделился, а ты прям всю подноготную случившегося хочешь знать
Leon
он всего лишь своей новостью поделился, а ты прям всю подноготную случившегося хочешь знать
Нууу это довольно интересная новость. У этих процессоров есть различия на уровне программирования виртуализации, какого-нибудь режима SMM, MSR и естественно наборы поддерживаемых инструкций (всякие sse, avx 512 и тд) - отличаются. Но в общем и целом в остальном процессоры должны одинаково успешно исполнять код
Guldan
он всего лишь своей новостью поделился, а ты прям всю подноготную случившегося хочешь знать
Посоветуйте пожалуйста какие-нибудь тз для ассемблера или сайты где их можно просмотреть. Хочу попрактиковаться
КТ315
Посоветуйте пожалуйста какие-нибудь тз для ассемблера или сайты где их можно просмотреть. Хочу попрактиковаться
Телеграм-бот, веб-сервер, парсер, брутер... Что угодно. Подробности сам придумай.
Ян
Нарисуй мейнкуна, размер программы до 3кб.
The Bird of Hermes
Это ещё кто?
Порода диких кошек
Alex
Порода диких кошек
Мейнкуны вполне домашние
Andrew [MSK+03]
Порода диких кошек
Простите, не удержался
Guldan
Огромное спасибо
Ян
Вирус напиши.
Ян
А что кому-то не нравится вирус? Предрассудки религиозные? Наука должна свободно работать во всех направлениях.
Ян
Я не про то что нужно чем то заражаться, понимание как что-то устроено всегда полезно.
EXEZZZ
А что кому-то не нравится вирус? Предрассудки религиозные? Наука должна свободно работать во всех направлениях.
Но не в таком, вирусы создана только лишь с криминальной целью, наука в таком направлении двигаться не будет
Ян
Всюду и без всяких предрассудков если надо.
КТ315
Заразись спидом, чо уж. Или короной.
Анямешнику не понравился твой комментарий 😂
­
Заразись спидом, чо уж. Или короной.
Вирусы когда-то давно создавались энтузиастами, для демонстрации своих умений (и понтануться, чо уж). А сейчас это чисто криминальное дело, вплоть до того, что реальный срок можно получить даже за PofC. Напиши загрузчик для Legacy x86, какую-нибудь прогу по типу текстового редактора, плеера mp3 или файл-менеджера, игру на крайний случай. У нас тут люди змейку писали на 350 байт.
­
Анямешнику не понравился твой комментарий 😂
Настолько пригорело, что аж прайм взял, что-бы 2 эмодзи влепить.
Alexey
Настолько пригорело, что аж прайм взял, что-бы 2 эмодзи влепить.
у меня препод использовал вирусы, чтобы школьными компами сидя управлять
Ян
Это же самое что кибернетику в СССР гнобили.
КТ315
у меня препод использовал вирусы, чтобы школьными компами сидя управлять
Либо ты не понимаешь, что значит "вирус", либо твой преподаватель просто балбес.
Alexey
Мне кажется, в данном случае вирус слишком разнообразное понятие
Alexey
возможно, мне уместнее сказать 'вредоносная программа'
­
Либо ты не понимаешь, что значит "вирус", либо твой преподаватель просто балбес.
Мож он реально вирусняк написал, который rat качает и инсталлит, чтобы когда его уволят - грохнут все компы...
КТ315
Мне кажется, в данном случае вирус слишком разнообразное понятие
Ни в каком случае. Это ламеры всё попало "вирусами" называют, и вот мне это ухо режет. Правильно говорить "ВПО", либо "вредонос"/"вредоносное ПО".
Alexey
Либо ты не понимаешь, что значит "вирус", либо твой преподаватель просто балбес.
Ну я тогда магией это считал, препод так троллил, что можно без рук мышкой управлять
КТ315
А вирус это конкретно вредонос, который заражает другие программы на ПК. И я не понимаю, нафига преподавателю такой функционал для управления другими ПК.
Ян
Если бы Homo sapiens использовал "штатные средства" обезьяны бы до сих пор с палкой копалкой бы бегали.
КТ315
Ну я тогда магией это считал, препод так троллил, что можно без рук мышкой управлять
Это обычный RMS, легальное решение. Типа AnyDesk, но который ещё сложно удалить с ПК - для защиты рабочего места от хитрых работников/студентов. Никакой не "вирус".
Alex
Господи, я из одного ассемблергого чата ушёл, чтобы подобный флуд не читать, так он и здесь начался
­
Так здесь наоборот флудилка
https://telegram.me/joinchat/BYlFbD-hNV4_rsFiBqmKTA
Alexey
аа
КТ315
Alex
https://telegram.me/joinchat/BYlFbD-hNV4_rsFiBqmKTA
Но там точно такой же флуд!
КТ315
Если бы Homo sapiens использовал "штатные средства" обезьяны бы до сих пор с палкой копалкой бы бегали.
Вот как раз если бы некоторые сапьенсы не любили создавать вредные и разрушительные вещи, то мы бы давно все планеты исследовали. А пока что друг друга ракетами кроем, и компьютеры друг другу заражаем, удаляем чужие проекты, воруем у друг друга деньги.
­
Но там точно такой же флуд!
Только тут я за это могу покарать
КТ315
k_voistinov
Доброго времени суток. А есть чат по RISC-V ассемблеру или тут тоже можно спросить?
­
Доброго времени суток. А есть чат по RISC-V ассемблеру или тут тоже можно спросить?
Отдельного чата не знаю, но у нас кто-то писал под риски.
k_voistinov
сюда можно код постить или закинуть ссылку? 50 строк кода
k_voistinov
Изучаю тему прерываний на RISC-V и не понимаю один момент. Данный код должен ловить временные прерывания - обработчик прерывания устанавливает время, когда должно произойти следующее прерывание. В целом как реализовать мне понятно, не понимаю почему у меня время прерывания срабатывает намного раньше, чем оно фактически есть.
k_voistinov
.macro timer(%timeout) lw t0, current_time add t0, t0, %timeout sw t0, next_interrupt, t1 .end_macro .eqv current_time 0xFFFF0018 .eqv next_interrupt 0xFFFF0020 .text j main main: la a0, interrupt_handler csrrw zero, utvec, a0 csrrsi zero, ustatus, 0x01 csrrsi zero, uie, 0x10 ReadInt s0 # max interrupts count ReadInt s1 # timeout in milliseconds mv t2, zero timer s1 loop: wfi j loop end: exit interrupt_handler: timer s1 addi t2, t2, 1 beq t2, s0, end uret
Alex
А теперь нужно описать, что происходит, и что ожидается
k_voistinov
тестирую значит в RARS, ожидаю что у меня будет крутиться таймер и в строго заданное время сработает прерывание, запустится обработчик, он установит новое время, считав текущее и добавив таймаут. Увеличит счетчик подсчета прерываний. Сделаем проверку, если еще не дошли до заданного значения - прыгаем в цикл ( wfi ) и ждем новое прерывание. У меня почему то прерывания идут не с заданным шагом, а постоянно в 1 секунду (ReadInt s1 - устанавливает таймаут, например, передали 5000 - но прерывание сработает не через 5 секунд а раньше. Вот и пытаюсь понять, что не так и что посмотреть посоветуете.
k_voistinov
А что такое ReadInt - это какая-то инструкция симулятора?
.macro ReadInt (%r) li a7, 5 ecall mv %r, a0 .end_macro макрос
k_voistinov
т.е просто упрощенный сискол c read
Alex
тестирую значит в RARS, ожидаю что у меня будет крутиться таймер и в строго заданное время сработает прерывание, запустится обработчик, он установит новое время, считав текущее и добавив таймаут. Увеличит счетчик подсчета прерываний. Сделаем проверку, если еще не дошли до заданного значения - прыгаем в цикл ( wfi ) и ждем новое прерывание. У меня почему то прерывания идут не с заданным шагом, а постоянно в 1 секунду (ReadInt s1 - устанавливает таймаут, например, передали 5000 - но прерывание сработает не через 5 секунд а раньше. Вот и пытаюсь понять, что не так и что посмотреть посоветуете.
Скорей всего это в чате по рисе-5 нужно спрашивать, но я бы убедился, что в s1 сохраняется заданное значение, а также что симулятор вообще поддерживает прерывания по таймеру должным образом. Ну и посмортел бы на меньших значениях - будет он тоже раз в секунду, или меньше
Ask
подскажите аналог масмового dup для gcc, чтоб массив сделать
КТ315
подскажите аналог масмового dup для gcc, чтоб массив сделать
Если я правильно понял, то gcc это С-компилятор.
Ask
у него инлайн асм есть
КТ315
у него инлайн асм есть
И зачем ты на нём пишешь?
Ask
у него инлайн асм есть
и ваще у меня кланг а не гцц оказывется🤪
s54820
подскажите аналог масмового dup для gcc, чтоб массив сделать
.dcb.l count, number, но .l зависит от размера (.b/.w/.l).
Ask
И зачем ты на нём пишешь?
вступайте и кампелируйте(с) 😁
КТ315
вступайте и кампелируйте(с) 😁
Это к чему? Что это значит?
КТ315
.dcb.l count, number, но .l зависит от размера (.b/.w/.l).
Всё с точкой... Жесть. Жил-был dup, стал .dcb.l (даже не с первого раза это написал).
Ask
Это к чему? Что это значит?
проверка на возраст😁
КТ315
проверка на возраст😁
И как? Проверил?
s54820
Всё с точкой... Жесть. Жил-был dup, стал .dcb.l (даже не с первого раза это написал).
А представь, как удобно отличать директивы от меток, когда синтаксис подсвечиваешь. И это не просто дуп, это dd+dup (ну или не dd).
КТ315
А представь, как удобно отличать директивы от меток, когда синтаксис подсвечиваешь. И это не просто дуп, это dd+dup (ну или не dd).
У меня не может существовать метки dup, или какой-то другой, похожей на директиву. Странный аргумент.
КТ315
Точнее, я не представляю ситуации, где такая метка существовать может.
КТ315
\.(\S+) — директива, красим синеньким. Остальное не красим.
Понятно. Как я уже говорил, в GNU лень было делать нормальный парсер, и они сделали такую простейшую (но ужасно неудобную) конструкцию директив. А также было лень создавать сложные регулярки. Лень, лень, лень.
КТ315
Все для людей)
Да и пофиг, всё равно на этом GAS писать никто не будет, это ж чисто для компилятора синтаксис.