Где я могу найти инструменты для изучения ассемблера на OS X? [закрытый]

Лучший способ сделать это - использовать класс WordPress для аутентификации пользователей. Вот мои решения:

1. Включите следующий PHP-файл WordPress:

include_once(dirname(dirname(dirname(__FILE__))).DIRECTORY_SEPARATOR."wp- includes".DIRECTORY_SEPARATOR."class-phpass.php");

2. Создайте объект класса PasswordHash:

$wp_hasher = new PasswordHash(8, true);

3. вызов функции CheckPassword для аутентификации пользователя:

$check = $wp_hasher->CheckPassword($password, $row['user_pass']);

4. проверьте переменную $check:

if($check) {
   echo "password is correct";
} else {
   echo "password is incorrect";
}
22
задан SoapBox 16 November 2008 в 01:46
поделиться

10 ответов

Если Вы используете PowerPC Mac, изучаете встроенный ассемблер gcc. Иначе изучите nasm. Я не могу дать достойные ссылки на PPC ASM (они немногочисленны), но я предлагаю следующие вещи изучить x86 asm:

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

Редактирование: Кроме того, получите gcc и такой от XCode не Macports или somesuch. Вы находитесь в для мира уродливых Мужественных файлов, если Вы не делаете. Не забава диагностировать проблемы формата файла, когда Вы только запускаете взламывание asm.

13
ответ дан Cody Brocious 29 November 2019 в 05:24
поделиться

Ассемблерный язык определяется аппаратной платформой, не операционной системой. Учитывая, что OS X работает на платформе Intel и является 64-разрядным, необходимо искать информацию о x64 (также названный AMD64) ассемблер. Проверьте статью Wikipedia ( http://en.wikipedia.org/wiki/X86-64 ) для большого количества ссылок на документацию о x64.

кроме того, документация инструментов OS X могла бы содержать большую информацию о x64 ассемблере. В частности, Ассемблер Netwide (NASM - http://developer.apple.com/documentation/DeveloperTools/nasm/nasmdoc0.html ) мог бы иметь документацию относительно того, как создать приложения OS X с помощью ассемблера.

5
ответ дан Franci Penov 29 November 2019 в 05:24
поделиться

Чтобы начать изучать блок, Вы могли бы хотеть запуститься с простых программ C и попросить, чтобы GCC генерировал ассемблерный код для него с помощью-S опции:

gcc -S hello.c -o hello.asm

Вы тогда будете в состоянии понять, как вызвать функции, аргументы передачи, и т.д.

5
ответ дан Martin Cote 29 November 2019 в 05:24
поделиться

Nasm/yasm являются Вашим лучшим выбором; gcc встроенный синтаксис вполне наносит вред и может быть очень болезненным для использования время от времени, плюс существуют буквально некоторые вещи, которые это не может делать. Макро-синтаксис Nasm также намного намного более полезен, удача на языке как блок, который не имеет никаких встроенных функций шаблонной обработки.

3
ответ дан Dark Shikari 29 November 2019 в 05:24
поделиться

XCode (т.е. GCC) имеет большую поддержку записи ассемблера. Это - забавная вещь учиться (хотя Вам вряд ли будет нужен он очень), и худшее, которое можно сделать, разрушить программу, которую Вы пишете, то же как в C. Просто Google для 'gcc встраивает учебное руководство по asm x86', и необходимо найти много начальных точек. Не волнуйтесь, что некоторые, будет казаться, будут конкретным Linux, они будут обычно работать точно также в XCode.

(редактирование)... принимающее Вас, имеют Intel Mac, конечно; если не тогда заменяют 'x86' 'PPC'.

1
ответ дан 29 November 2019 в 05:24
поделиться

здесь

я запрограммировал блок на Mac. Это был ассемблер Motorola 680x0, использующий MPW. Я затронул ассемблер PowerPC несколько раз в CodeWarrior и ProjectBuilder. Теперь ProjectBuilder называют XCode, и существует Intel. Ассемблер является одним из многих инструментов в XCode.

я первоначально изучил ассемблер на Apple II: 6 502 монитора машинного языка создаются в ROM, мини-ассемблере Sweet16 и других. Позже, я использовал ассемблер Intel 80186 для ускорения медленных битов кода C и работы, оплаченной один дневной курс об ассемблере Intel 80186 в университете. Позже, я должен был поддержать некоторых 680x0 блок для Mac. Это было давным-давно.

я не думаю, что существует любая причина не сделать блок. Изучение является большим. Изучите все, что Вы можете. Заскочите в достаточно низкий отладчик уровня и посмотрите на демонтированный код.

Мой совет:

не боятся.

1
ответ дан Mark Stock 29 November 2019 в 05:24
поделиться

Нет никакой причины, почему Вы не были должны; нет ничего, что можно сделать в ассемблере, который Вы не можете сделать на высокоуровневом языке как C.

, Насколько инструменты идут, Вы могли бы хотеть установить MacPorts и получить ассемблер GNU. Это может или не может быть самым легким путем, но это свободно, и можно, вероятно, найти учебную документацию для записи программ Unix в ассемблере GNU где-нибудь в сети.

0
ответ дан Greg Hewgill 29 November 2019 в 05:24
поделиться

Существуют два три вещи Вы для знания потребности в записи ассемблера в системе с операционной системой (в противоположность блоку 'без операционной системы', который является собственным миром):

  1. , Как система команд работает - загрузки ресурсов для Intel X86, если у Вас есть Intel Mac, все еще разумный набор для PPC, например Внутренности Mac OS X .

  2. , Как собраться, связывают Ваши программы - если Вам установили инструменты Developer, у Вас есть GCC и связанные инструменты

  3. , Как говорить с ОС - вот то, где блок Mac партия менее хорошо зарегистрирован, чем Windows или Linux. Это можете быть Вы, должны записать эквивалентные программы C и использование 'gcc-S' для наблюдения, какие соглашения восстановления вызова/стека являются соответствующими. Это зависит, что Вы хотите сделать, но в miniumum Вам нужны системные вызовы ОС IO и выделения памяти.

А хорошая начальная точка здесь .

0
ответ дан domgblackwell 29 November 2019 в 05:24
поделиться

Если Вы имеете Инструменты Разработчика установленный, можно просто открыть Terminal и тип как ( Ассемблер GNU - часть Binutils).

0
ответ дан 29 November 2019 в 05:24
поделиться

Поскольку PPC пробует Lightsoft

0
ответ дан 29 November 2019 в 05:24
поделиться
Другие вопросы по тегам:

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