Войти
ПрограммированиеФорумОбщее

Кроссплатформенный ассемблер

Страницы: 1 2 3 4 5 Следующая »
#0
23:36, 7 июня 2019

Здорово!
Собсно, САБж

Есть ли где нибудь кроссплатформенный ассемблер ?
Чтоб команды сложыть, умножыть, делить и вычисть были для всех процессоров одинаковые ? 


#1
23:46, 7 июня 2019

Vendein_RaZoR
> Здорово!
> Собсно, САБж
Несколько раз отпинать, чтоб научился разговаривать...

#2
23:49, 7 июня 2019

Разговаривать я умею, а с письмом проблема
Пинать не надо, я холосый

#3
23:49, 7 июня 2019

Например https://llvm.org/  ейный IR вполне себе катит за ассемблер

#4
22:51, 8 июня 2019

у каждого процессора свой ассемблер.

#5
(Правка: 16:23) 16:21, 12 июня 2019

У разных процессоров не совпадает ни разрядность регистров, ни их количество, ни способ организации банка регистров (например, регистровое окно не имеет вообще ничего общего с банком регистров любого x86, или AMD64 процессора), ни даже количество банков регистров. У некоторых процессоров есть регистр-аккумулятор, у других – несколько регистров общего назначения. С чем Вы собрались выполнять одну и ту же обозначенную одной и той же мнемоникой операцию? У одних процессоров адреса базируются прямой конкатенацией смещения с базовым регистром, у других – сложением смещения с базой, вычисляемой сдвигом сегментного регистра на величину, меньшую разрядности смещения. Пример конкатенации смещения с базой – Z80, пример вычисления базы сдвигом на величину, меньшую разрядности смещения, и последующего сложения со смещением – i80286. Мало того, z80 требует загрузки смещения в регистр, однозначно соответствующий базовому. Значит единый доступ к памяти тоже летит к чёрту, так как на низком уровне все эти тонкости учитываются в коде. Плюс разные наборы разрядностей операций. Только 8, только 16, от 8-ми до 32-х, только 64. Какую операцию Вы собрались единообразно кодировать? Сложение байтов? Привет процессорам, поддерживающим логику и арифметику только четверных слов. Четвереные слова? Привет малоразрядным контроллерам. RISC-процессоры позволяют загрузить в регистр часть значения, CISC – только целое значение. Мало того, байт не обязан быть октетом, возможны процессоры и с байтами бит так по 48, или даже 96. И довершает зоопарк Сетунь, вообще не понимающая, что такое байт. А трайт у неё шеститритный. Проще будет научиться танцевать, использовать эти знания для проектирования термоядерной электростанции.

#6
16:22, 12 июня 2019

0iStalker
> Например https://llvm.org/ ейный IR вполне себе катит за ассемблер
А по-русски?

#7
16:37, 12 июня 2019

Опять по-нерусски.

#8
17:35, 12 июня 2019

Тарас-Прогер
> Опять по-нерусски.
Что тебе неясно-то?

#9
(Правка: 18:17) 18:16, 12 июня 2019

Vendein_RaZoR
> Есть ли где нибудь кроссплатформенный ассемблер ?
> Чтоб команды сложыть, умножыть, делить и вычисть были для всех процессоров
> одинаковые ? 
Cи ? сложить, умножить делить и вычесть - для всех процессоров одинаковые.
кроссплатформенный!

#10
19:20, 12 июня 2019

Vendein_RaZoR
А для чего тебе ассемблер? Разве C / C++ не устраивает?
Я когда-то тоже мечтал движок на ассемблере написать, но для меня это уже перебор :) остановился на плюсах

#11
(Правка: 3:01) 3:00, 13 июня 2019

gudleifr
> И да, потом он пишет движок - это вторая ступень вниз.
Ты только не напиши это тем, кто уже выпустил на своём движке игру, они решат, что ты выпил не менее цистерны боярышника.
У нас ходят такие по району, практически каждый день его пьют, глаза мутные, ничего не соображающие, как зомби.
А я, например, без разработки своего движка уже не могу, постоянно приходится решать какие-то вопросы, особенно, если ты пишешь движок для разработки игр, а не бесцельно. Даже звуковой движок сам пишу.
P.S. Насмотрелся уже на Юнити, UE4, CryEngine, не вызвали ни малейшего желания с ними работать = народу вроде много их делает и даже вроде за зарплату, но такое впечатление, что этим занимается гопка школьников на энтузиазме в свободное от учёбы время = слишком много вещей в них требуют доделок, особенно, если учесть, сколько времени и сил на них уже было затрачено и до сих пор не смогли многие вещи довести до ума. Я имею в виду редакторы.

#12
12:36, 13 июня 2019

1 frag / 2 deaths
> Что тебе неясно-то?
Всё.

#13
(Правка: 12:44) 12:41, 13 июня 2019

Ассемблер, кстати, как раз и предназначен для того, чтоб писать на языке, зависимом не только от процессора, а от каждой компьютерно-архитектурной мелочи вроде DMA, номеров прерываний и способа передачи им параметров и даже самостоятельно ровнять данные. Так что кросплатформенный ассемблер – это даже концептуально крокодил зелёный, синий как морковка. А если кросплатформенности, то тебе нужен не ассемблер и даже не паскаль, а язык высокого уровня. Например, си.

#14
15:41, 13 июня 2019

Тарас-Прогер
> Так что кросплатформенный ассемблер – это даже концептуально крокодил зелёный, синий как морковка.
На ассемблере даже на Спектруме было геморрно писать, где всё было предельно ясно, а уж на ПК = это вообще пиздец... ещё на Турбоассемблере можно было какой-нибудь «Hello World!» состряпать, но что-то более сложное уже смысла не имело, когда есть C / C++.

Страницы: 1 2 3 4 5 Следующая »
ПрограммированиеФорумОбщее