The Bird of Hermes
The Bird of Hermes
Я хочу себе запилить имитацию такого типа данных, как строка в высокоуровневых языках
Aiwan \ (•◡•) / _bot
The Bird of Hermes
Создав односвязный список из байт
The Bird of Hermes
Eugene
Конечно
The Bird of Hermes
Конечно
Так, ну ведь в макрос всё равно надо вставлять ассемблерный код
The Bird of Hermes
Или нет?
Aiwan \ (•◡•) / _bot
Aiwan \ (•◡•) / _bot
не путай ассемблер с яву. то что в яву часть синтаксиса, в ассемблере все делается ручками
Eugene
Структурированные знания всегда лучше обрывочных.
disba1ancer
disba1ancer
The Bird of Hermes
Aiwan \ (•◡•) / _bot
Aiwan \ (•◡•) / _bot
The Bird of Hermes
Ну точнее позволят, только как я потом к ней буду обращаться, куда мне её деть
The Bird of Hermes
В стеке хранить?
Aiwan \ (•◡•) / _bot
сишку подучи
The Bird of Hermes
Там динамические массивы есть
Aiwan \ (•◡•) / _bot
The Bird of Hermes
Aiwan \ (•◡•) / _bot
От с#🙂
ну раз такая пляска, как мне в сишарп использовать ассемблер для доступа к msr регистру?
The Bird of Hermes
Aiwan \ (•◡•) / _bot
Aiwan \ (•◡•) / _bot
используй спп для организации динамических строк и подключай либу в асмокоде
Aiwan \ (•◡•) / _bot
если хочешь на асме - делай на асме все вручную от А до Я, так как это делает ЯВУ (можешь дизасм подсмотреть в таком случая, чтоб оценить масштаб работы и необходимых знаний)
The Bird of Hermes
The Bird of Hermes
Односвязный список байт намучу и всё
Aiwan \ (•◡•) / _bot
и что мешает пойти по прихоти этого "надо"?
Aiwan \ (•◡•) / _bot
там кто то из классиков показывал как списки делать на асме
Aiwan \ (•◡•) / _bot
мне вот тоже надо для одного алгоритма односвязный список, но я не ною что асм для этого не удобен, я делаю на нем то, что мне нужно здесь и сейчас, зная все его недостатки и преимущества, чтоб одно нивелировать другим
Aiwan \ (•◡•) / _bot
https://habr.com/ru/post/532004/
вот алгоритм, реализуй на асме. а если не знаешь как, то сначало надо асм выучить и понять, чтоб переходить к более сложным методам решения задачи
The Bird of Hermes
Aiwan \ (•◡•) / _bot
Aiwan \ (•◡•) / _bot
Aiwan \ (•◡•) / _bot
The Bird of Hermes
The Bird of Hermes
Я излагал свои хотелки
Aiwan \ (•◡•) / _bot
(я это услышал именно так.)
Aiwan \ (•◡•) / _bot
а
$-arr
чем не устаривает? эт как бы стандарт в асме определения размера инициализированных данных (и кода в том числе)
The Bird of Hermes
The Bird of Hermes
А нафиг мне это надо
The Bird of Hermes
Возьму вычислю в процессе и забуду, когда будет не нужно
Ask
какой еще кусочек
Ask
это лейбл, метка для компилятора
The Bird of Hermes
The Bird of Hermes
Зачем мне лишнюю переменную держать
Ask
где?
Ask
покажи
The Bird of Hermes
Беру
Lea dx, arr
Lea bx, след_переменная
sub bx, dx
The Bird of Hermes
И всё
Ask
ты читаешь что тебе пишут?
The Bird of Hermes
The Bird of Hermes
Я про способы определения длины массива
Ask
The Bird of Hermes
Ask
покажи где лишняя переменная будет
The Bird of Hermes
👆
arr db 6,7,9,8
len db $-arr
Aiwan \ (•◡•) / _bot
The Bird of Hermes
Ask
🥳
The Bird of Hermes
Так хорошо, а как заставить работать директиву returns?
The Bird of Hermes
Которая вместе с arg и local
The Bird of Hermes
Она разве не должна класть результат на вершину стека после конца процедуры?
Eugene