Запитання з тегом «assembly»

Питання програмування мови (асм). ОБОВ'ЯЗКОВО ТАКОЖ ТАКОЖ ТАГО з набором процесора та / або інструкцій, який ви використовуєте, а також з асемблером. ПОПЕРЕДЖЕННЯ. Для збірок .NET використовуйте замість тегу [.net-Assembly]. Для Java ASM використовуйте замість тегу [java-bytecode-asm].

10
Чому x86 потворний? Чому він вважається неповноцінним порівняно з іншими? [зачинено]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …

7
Як саме працює стопка дзвінків?
Я намагаюся глибше зрозуміти, як працюють операції мов програмування низького рівня, і особливо, як вони взаємодіють з ОС / процесором. Я, мабуть, читав кожну відповідь у кожній нитці, що стосується стека / купи, тут на Stack Overflow. Але є ще одне, чого я ще не повністю зрозумів. Розглянемо цю функцію …


23
Навчальна збірка [закрито]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 3 роки тому . Удосконаліть це питання Я вирішив вивчити асемблерну мову. Основна причина цього - це можливість …
102 assembly 

5
Для чого призначений реєстр “FS” / “GS”?
Тому я знаю, якими мають бути наступні регістри та їх використання: CS = сегмент коду (використовується для IP) DS = сегмент даних (використовується для MOV) ES = Сегмент призначення (використовується для MOVS тощо) SS = сегмент стека (використовується для SP) Але для чого призначені наступні регістри? FS = "Сегмент файлу"? …

5
Яка функція push / pop інструкцій, що використовуються в регістрах у збірці x86?
Читаючи про асемблер, я часто стикаюся з людьми, які пишуть, що вони штовхають певний регістр процесора і вмикають його пізніше, щоб відновити попередній стан. Як можна натиснути реєстр? Куди його штовхають? Навіщо це потрібно? Це зводиться до однієї інструкції процесора чи вона більш складна?


3
Як можна побачити вміст стека за допомогою GDB?
Я новачок у GDB, тому маю кілька запитань: Як я можу подивитися на вміст стека? Приклад: щоб переглянути вміст реєстру, я вводжу info registers. Для стека, яким він повинен бути? Як я можу побачити вміст $0x4(%esp)? Коли я print /d $0x4(%esp)вводжу, GDB видає помилку. Платформа: Linux та GDB
95 c  assembly  gdb 

2
Несподіваний дозвіл exec з mmap при складанні файлів, що входять до проекту
Я з цим стукаю головою в стіну. У моєму проекті, коли я виділяю пам'ять за mmapдопомогою відображення ( /proc/self/maps), видно, що це читабельна та виконувана область, незважаючи на те, що я запитував лише читабельну пам'ять. Переглянувши strace (що виглядало добре) та інші налагодження, я зміг визначити єдине, що, здається, уникне …
94 c  linux  assembly  mmap 

5
Яка мета реєстру покажчика кадру EBP?
Я початківець у мові складання і помітив, що код x86, що випромінюється компіляторами, зазвичай утримує покажчик кадру навколо навіть у режимі випуску / оптимізації, коли він може використовувати EBPреєстр для чогось іншого. Я розумію, чому покажчик кадру може полегшити налагодження коду, і це може знадобитися, якщо alloca()викликається у межах функції. …

8
Що швидше: if (bool) або if (int)?
Яке значення краще використовувати? Логічне значення true або ціле число 1? Вищевказана тема змусила мене провести деякі експерименти з boolта intв ifстані. Тож просто з цікавості я написав цю програму: int f(int i) { if ( i ) return 99; //if(int) else return -99; } int g(bool b) { if …
94 c++  assembly  int  boolean 


14
Яка різниця між словом і байтом?
Я провів кілька досліджень. Байт - це 8 біт, а слово - це найменша одиниця, яку можна адресувати в пам'яті. Точна довжина слова варіюється. Я не розумію, у чому сенс мати байт? Чому б не сказати 8 біт? Я запитав у професора це питання, і він сказав, що більшість машин …

7
Чи варто вивчати мову асемблерів? [зачинено]
Зачинено. Це питання не в темі . Наразі відповіді не приймаються. Хочете покращити це питання? Оновіть питання, щоб воно було актуальним для переповнення стека. Закрито 9 років тому . Удосконалюйте це питання Чи все ж варто вивчати АСМ ? Я трохи про це знаю, але я насправді не користувався цим …

6
Як розібрати необроблений 16-розрядний машинний код x86?
Я хотів би розібрати MBR (перші 512 байт) завантажувального диска x86, який у мене є. Я скопіював MBR у файл за допомогою dd if=/dev/my-device of=mbr bs=512 count=1 Будь-які пропозиції щодо утиліти Linux, яка може розібрати файл mbr?
91 linux  assembly  x86  x86-16  mbr 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.