Программирование на Mac - PullRequest
       7

Программирование на Mac

6 голосов
/ 17 апреля 2010

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

Учебник, на который я посмотрю, от VTC [ссылка] .

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

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

Ответы [ 5 ]

5 голосов
/ 17 апреля 2010

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

1 голос
/ 17 апреля 2010

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

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

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

0 голосов
/ 17 апреля 2010

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

0 голосов
/ 17 апреля 2010

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

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

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

0 голосов
/ 17 апреля 2010

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

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

Расширение файла, которое вы ищете: .s.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...