Программирование блока на Mac

Я нахожусь на Mac с Snow Leopard (10.6.3). Я слышу, что ассемблер, с которым я работаю, должен быть допустимым с чипсетом, который Вы используете. Я абсолютно плохо знаком с этим, у меня есть основные знания в C и программировании Objective C и почти серьезной подготовке в PHP. Я всегда хотел видеть то, о чем блок - все.

Учебное руководство, на которое я буду смотреть, VTC [ссылка].

То, что я хочу знать: учебные руководства то, что я собираюсь сделать совместимый с версией блока на Mac, который я имею?

Я абсолютно плохо знаком с этим языком, хотя я действительно вспоминаю изучение части его путь, путь назад в день. У меня действительно есть XCode и что я задаюсь вопросом, то, какой документ я открыл бы в XCode для работы с блоком, и Mac имеет созданный в Hex-редакторе (когда он приходит время к необходимости в нем)?

6
задан halfer 28 May 2018 в 22:49
поделиться

5 ответов

Используемый вами язык ассемблера не зависит на вашей ОС, а скорее на наборе инструкций вашего процессора. Судя по вашей версии Mac, я бы сказал, что вы используете процессор Intel - поэтому вам нужно изучить сборку x86 или amd64.

5
ответ дан 17 December 2019 в 02:26
поделиться

Сборка для любого процессора будет более или менее одинаковой по концепции. Однако сложность зависит от процессора. Судя по тому, что я вижу на вашем сайте, вы выполняете ассемблер x86 (x86 - это набор инструкций, который используют все процессоры Intel потребительского класса, которые используются в последних Mac и всех ПК), что может оказаться довольно сложным, но не подавляющим. если учишь по шагам.

Я полагаю, XCode работает с простыми текстовыми файлами. Hex Fiend для ваших нужд редактирования гекса, если вы их встретите.

Помните, что Assembly крайне низкоуровневая . Никаких «если», «пока» или вообще никаких циклов управления, кроме «выполнить операцию и перейти, если результат (не) равен нулю / равенству» (если только ваш ассемблер не предоставляет их в качестве синтаксического сахара, что, на мой взгляд, превосходит цель). Знания PHP будут полезны в лучшем случае косвенно. Однако ваши знания C должны хорошо служить вам.

0
ответ дан 17 December 2019 в 02:26
поделиться

Связанные руководства выглядят так, как будто они используют NASM , который входит в комплект Mac. Однако системные вызовы обычно различаются на разных платформах (они сильно различаются между Mac и Linux), и, не просматривая учебные руководства, трудно понять, будут ли они нацелены на разные платформы (хотя я думаю, что нет). Лучше установить SPIM и изучить сборку MIPS, которая в любом случае проще, чем x86.

0
ответ дан 17 December 2019 в 02:26
поделиться

Ассемблер зависит от архитектуры команд. Чипы - это реализация архитектуры команд.

На мой взгляд, лучше всего получить TextWrangler и напрямую скомпилировать его с помощью gcc.

Требуемое расширение файла - .s .

0
ответ дан 17 December 2019 в 02:26
поделиться

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

У TI есть несколько хороших, недорогих девкитов , с которыми можно поиграть. Я покопался в комплекте Chronos (50 долларов), в котором есть цифровые часы с программируемым микроконтроллером MSP430 с беспроводным соединением с вашим компьютером. Это довольно мило.

Обновление: Я забыл упомянуть Arduino . Это отличная открытая платформа с множеством интересных периферийных устройств и онлайн-проектов.

1
ответ дан 17 December 2019 в 02:26
поделиться
Другие вопросы по тегам:

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