Рассмотрим на примере установки электрической лампочки инструкции CISC.
1. Возьмите электрическую лампочку.
2. Вставьте ее в патрон.
3. Вращайте до отказа.
И аналогичный пример в виде инструкций RISC.
1. Поднесите руку к лампочке.
2. Возьмите лампочку.
3. Поднимите руку к патрону.
4. Вставьте лампочку в патрон.
5. Поверните ее.
6. Лампочка поворачивается в патроне? Если да, то перейти к п. 5.
7. Конец.
Многие инструкции RISC довольно просты, поэтому для выполнения какой-либо операции потребуется больше таких инструкций. Их основное преимущество состоит в том, что процессор осуществляет меньше операций, а это, как правило, сокращает время выполнения отдельных команд и соответственно всей задачи (программы). Можно долго спорить о том, что же в действительности лучше — RISC или CISC, хотя, по правде говоря, такого понятия, как "чистая" микросхема RISC или CISC, не существует. Подобная классификация не более чем вопрос терминологии.
Процессоры Intel и совместимые с ними процессоры можно определить как микросхемы CISC. Несмотря на это, процессоры пятого и шестого поколения обладают различными атрибутами RISC и разбивают во время работы команды CISC на более простые инструкции RISC.
Технология MMX
В зависимости от контекста, MMX может означать multi-media extensions (мультимедийные расширения) или matrix math extensions (матричные математические расширения). Технология MMX использовалась в старших моделях процессоров Pentium пятого поколения (рис. 3.2) в качестве расширения, благодаря которому ускоряется компрессия/декомпрессия видеоданных, манипулирование изображением, шифрование и выполнение операций ввода-вывода — почти все операции, используемые во многих современных программах.
В архитектуре процессоров MMX есть два основных усовершенствования. Первое, фундаментальное, состоит в том, что все микросхемы MMX имеют больший внутренний встроенный кэш, чем их собратья, не использующие эту технологию. Это повышает эффективность выполнения каждой программы и всего программного обеспечения независимо от того, использует ли оно фактически команды MMX.
Другим усовершенствованием MMX является расширение набора команд процессора 57 новыми командами, а также введение новой возможности выполнения команд, называемой одиночный поток команд — множественный поток данных (Single Instruction — Multiple Data, SIMD).
В современных мультимедийных и сетевых приложениях часто используются циклы; хотя они занимают около 10% (или даже меньше) объема полного кода приложения, на их выполнение может уйти до 90% общего времени выполнения. SIMD позволяет одной команде осуществлять одну и ту же операцию над несколькими данными, подобно тому как преподаватель, читая лекцию, обращается ко всей аудитории, а не к каждому студенту в отдельности. Технология SIMD позволяет ускорить выполнение циклов при обработке графических, анимационных, видео- и аудиофайлов; в противном случае эти циклы отнимали бы время у процессора.
Компанией Intel было добавлено 57 новых команд, специально разработанных для более эффективной обработки звуковых, графических и видеоданных. Эти команды предназначены для выполнения с высокой степенью параллелизма последовательностей, которые часто встречаются при работе мультимедийных программ. Высокая степень параллелизма в данном случае означает, что одни и те же алгоритмы применяются ко многим данным, например к данным в различных точках при изменении графического изображения.