Cisc против Risc - PullRequest
       8

Cisc против Risc

7 голосов
/ 01 февраля 2011

Если вы писали учебник и вам нужно было определиться с дизайном ЦП, чтобы поговорить об определенных проблемах, вы бы выбрали RISC или CISC? Плюсы для RISC, ну вы знаете: чище, проще и тд. Минусы для RISC: мне пришлось бы использовать эмулятор, немного процессоров на рынке, по сравнению с x86, и, следовательно, меньшее влияние, чем если бы я выбрал чистый процессор RISC, такой как ARM или SPARC. Я разрываюсь, хотя склоняюсь к x86 и CISC ... много плюсов и минусов: не RISC, а все эти книги, как Henessy et al. и другие любят RISC! Итак, в заключение: вы бы выбрали RISC или CISC (x86)? Спасибо.

Ответы [ 4 ]

11 голосов
/ 01 февраля 2011

Вы говорите конкретно о дизайне процессора x86 или об особой конструктивной особенности, которая более распространена в x86, чем что-либо еще?Нет?Затем перейдите к архитектуре RISC.

Все, чего достигнет x86, - это то, что механика x86 затеняет то, что вы на самом деле пытаетесь сделать.

4 голосов
/ 30 марта 2011

Для общей (или программистской) аудитории, которую я бы предложил x86 . Независимо от того, на каком языке они знакомы, с помощью инструкций x86 можно легко продемонстрировать те же строительные блоки, как для и , если , или концепцию функций . 1009 *

Asm достаточно абстрактен, бесценно, если они могут соединить новые знания с их существующим пониманием программирования. (Это может даже помочь им написать код лучшего качества).

Я не думаю, что выбор x86 означает, что вы должны включить все инструкции. Следующий уровень может заключаться в том, что вы вводите представление машинного кода некоторых структур ASM, но только тогда, когда они вначале довольны своей мнемоникой.

4 голосов
/ 01 февраля 2011

Я предпочитаю RISC, потому что у них есть fast и маленькие инструкции .Они дешевле , чем CISCs, и имеют много больше регистров .А некоторые инструкции процессоров CISC, например, xchg или scas, stos, movs и cmps, используемые с rep, настолько специфичны, что многие компиляторы их никогда не используют, поэтому их наличие толькотрата кремния и денег.
И, говоря о регистрах, даже если процессоры RISC нуждаются в большем количестве инструкций для выполнения того, что CISC будет делать только с одним, они имеют так много регистров, что (я думаю) доступ к памяти происходит реже наRISC.Я говорю как «программист» CISC, так как я учился на Intel x86 и иногда имел только 6 доступных регистров общего назначения, которые часто сокращаются до 3 или 4 в циклах (ecx пропал, либо с edi, либо с esi, либо с обоими), может быть очень хитрым.Хотя сама сборка имеет тенденцию скрывать истинную природу кода, я думаю (помните, я вырос с x86), что сборка RISC труднее понять из-за большого количества необходимых инструкций.

1 голос
/ 09 июля 2011

Если основным требованием для проекта является безопасность, а не емкость, поскольку безопасность часто является компромиссом для емкости, тогда я предлагаю использовать архитектуру RISC.Известно, что у брандмауэра, который использует ассемблер x86, была проблема безопасности, которой не было у реализации RISC, как у ассемблера SPARC.Таким образом, спецификацией для наиболее безопасного проекта может быть использование сборки SPARC, поскольку известно, что это безопасная среда, и даже если неизвестно, что это безопасная среда, существует так мало людей, которые могут программировать сборку SPARC по сравнению со сборкой x86.поэтому число злоумышленников, которые могут запрограммировать нарушение безопасности, будет меньше, если брандмауэр работает в архитектуре RISC.

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

...