169 похожих чатов

А это правда что у каждой версии арма отличается набор

инструкций для асма ? может лучше использовать gas под андроид ? просто у арма че-то все перемудрено, когда пишут на с под андроид через ндк, используется же обычный gcc не ?

40 ответов

77 просмотров

Частично отличается. Некоторые инструкции и группы инструкций могут отсутствовать. Но разве в x86 не так же?

123- Автор вопроса
s54820
Частично отличается. Некоторые инструкции и группы...

А нормально если я напишу на асме который под v7 арм, и полученную программу будут использовать на телефоне у которого v9 скажем ? есть обратная совместимость ? Вот у меня еще вопрос, в какой асм компилируется сишний код через gcc для использование с помощью андроид ндк ? в гас под арм ?

123
А нормально если я напишу на асме который под v7 а...

Это разная разрядность. Не знаю, запустится ли. Вероятно, будет зависеть от версии андроида. А про компиляторы я не понял. Есть NDK, он кросскомпилятор, там есть gcc/gas, они собирают код под арм. Ты можешь поставить какой-нибудь termux или entware на телефон и оттуда запускать нативные gcc/gas.

Может просто привычнее? Я также смотрел на x86 после PDP11.

123- Автор вопроса
s54820
Это разная разрядность. Не знаю, запустится ли. Ве...

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

О, друг по GNU Asm'у :3

Стикер

Стикер

Какие интересные заявления. Человеку нужен ассемблер под арм, ему не нужен PE под Windows.

123- Автор вопроса

Так это мне а не ему.

s54820
Какие интересные заявления. Человеку нужен ассембл...

Тогда зачем ты FASM сюда приводишь, если он вообще на ARM не нацелен?? Есть и другие лёгкие аналоги FASM, но на ARM. Не обязательно сразу бежать на GAS и мучиться с его ужаснейшим синтаксисом.

123- Автор вопроса
123- Автор вопроса
123
Так это я приводил фасм.

https://t.me/ChatAssembler/267605

Чтобы не копировать бинарники через adb каждый раз, когда изменил буковку.

s54820
Какие интересные заявления. Человеку нужен ассембл...

С фега? он сам заявил, что на виндовс 10 хочет писать

123- Автор вопроса
123
Так это я приводил фасм.

Тогда извиняюсь @s54820. Его нет смысла сравнивать по программированию ИЗ-ПОД других архитектур, он на это не нацелен. На нём ты можешь писать из x86 НА какую-то архитектуру, но не наоборот. Потому что он написан сам на себе, а GAS написан на С. Зато у него есть ряд других преимуществ, и он вовсе не бесполезный.

КТ315
Тогда зачем ты FASM сюда приводишь, если он вообще...

Потому что спросили про фасм. Потому что есть фасмарм. Потому что в GAS нет ужаснейшего синтаксиса. Он есть только в GAS под для x86.

s54820
Потому что спросили про фасм. Потому что есть фасм...

Я не только про AT&T, потому что это не совсем даже к GAS относится, они просто зачем-то вставили этот синтаксис по-умолчанию. Я про синтаксис директив, им лень было сделать нормальный синтаксис, и чтобы проще было обрабатывать директивы, у них каждая директива начинается с точки 🤯 не говоря про их способности. Лучше взять какой-то лёгкий аналог FASM, написанный под ARM.

КТ315
Я не только про AT&T, потому что это не совсем даж...

.data message: .ascii "Hello world!\n" // данные для вывода Ладно про ".data", пусть даже так. MASM-подобная директива какая-то, но не суть. Что ещё за .ascii?? Почему нельзя было сделать нормальный db? И комментарии почему не через точку с запятой???

КТ315
.data message: .ascii "Hello world!\n" // данные ...

msg: db "Hello, world!",13,10,0 msg: .asciz "Hello, world!\r\n"

s54820
Чтобы не копировать бинарники через adb каждый раз...

Ты же не будешь в телефоне буковки менять, это еще сложнее будет когда большое приложение

123- Автор вопроса
КТ315
Тогда извиняюсь @s54820. Его нет смысла сравниват...

Короче, скажу что мне нужно чтобы не было срача. 1.Мне нужен ассемблер который можно использовать с андроид ндк, чтобы можно было писать программы на ассемблере и получать их в виде апкашника. 2.Нужно чтобы этим ассемблером можно было обращаться к системе, получать или отдавать "запросы", например запрос на получение текущего времени, запрос например на то чтобы появилось окошко открыть с помощью... , или например получить координаты экрана, на который попал пальцем пользователь, и т.д, максимум взаимодействовать с системой. 3.Чтобы можно было на этом ассемблере рисовать окошки, текст, и т.д например с помощью opengl или вулкан, или еще каким способом. Короче говоря мне нужна альтернатива java в виде ассемблера.

The Bird of Hermes
Ты же не будешь в телефоне буковки менять, это еще...

Я отлаживаю нативный код как обычное консольное приложение. Собираю прямо на устройстве, отлаживаюсь в gdb, все дела. Я не предлагаю .apk на устройстве собирать, если что.

123- Автор вопроса
123
Короче, скажу что мне нужно чтобы не было срача. ...

Такое вообще реализуемо ? можно надыбать инфы по этим пунктам ? насколько это сложно реализовать ?

123
Короче, скажу что мне нужно чтобы не было срача. ...

Ты вроде не первый раз это справшиваешь. Рисовать/обрабатывать события совершенно без java, да ещё на ассемблере больно. Но ты можешь большую часть функциональности оформить в нативную либу, и уже там делать что угодно. Можешь взять SDL какой-нибудь, будет проще.

123- Автор вопроса
s54820
Ты вроде не первый раз это справшиваешь. Рисовать/...

Да не первый раз, думаю надо ли оно, вывезу или нет, мне это все для компилятора нужно.

123- Автор вопроса
s54820
Ты вроде не первый раз это справшиваешь. Рисовать/...

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

123
Ну есть же тот же самый винапи который во всех про...

Под андроидом местный винапи на джаве.

123- Автор вопроса
123
Ну есть же тот же самый винапи который во всех про...

Нужно копать в это сторону мб, вдруг еще найду способ окошки рисовать с помощью апи 😁

123- Автор вопроса
s54820
Под андроидом местный винапи на джаве.

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

123
Ну а винапи на си же, не в первой, что поделаешь, ...

https://docs.oracle.com/javase/8/docs/technotes/guides/jni/spec/jniTOC.html

123- Автор вопроса
s54820
Под андроидом местный винапи на джаве.

Кстати я только сейчас понял, если писать приложения используя gas, то они же будут на любой версии андроида, и арма работать.

123- Автор вопроса
123- Автор вопроса
123
Кстати я только сейчас понял, если писать приложен...

То есть будет обратная совместимость.

123
Кстати я только сейчас понял, если писать приложен...

Обратной не будет. Будет в пределах разрядности, пока тебе не нужна плавающая точка.

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
Карта сайта