Страницы← предыдущаяследующая →
Сегодня программисты обычно уже не вспоминают о 16-разрядных процессорах и разрабатывают новые программы с учетом того, что они будут использоваться на компьютере с процессором не ниже 80386 (конечно, с тактовой частотой 33 или 40 МГц). К тому же, только в последних моделях процессоров Intel и AMD внутренняя архитектура перестает быть улучшенным вариантом 286/386. Можно сказать, что сейчас происходит не просто увеличение разрядности процессоров и смена их поколений, а идет мучительный поиск наиболее оптимальных принципов работы будущих компьютеров.
Если вспомнить, то именно неудачная архитектура 80286 и защищенного режима, который, как надеялись разработчики, позволит реализовать для персональных компьютеров многозадачную работу, заставила инженеров корпорации Intel очень серьезно подойти к разработке архитектуры 32-разрядного процессора. Перед ними стояла непростая задача – сохранить возможность использования уже наработанного программного обеспечения и предусмотреть удобное применение процессора в многозадачных системах.
Использование в новом процессоре полной 32-разрядной архитектуры, конечно, было не совсем оправданным, но закладывало необычайно большой резерв возможностей, на которые можно будет опереться в будущем. Это подтвердил тот факт, что только Windows 95 стала первой массовой операционной системой, использовавшей все возможности Intel 386, а до этого основной режим, для которого создавалось подавляющее число программ, был 16-разрядным.
Когда, 17 октября 1985 г., было объявлено о начале выпуска 32-разрядного процессора Intel 80386, особого интереса это событие в то время не вызвало. Программистам вполне хватало возможностей 80286 процессора, а 32-разрядная арифметика считалась непозволительной роскошью. Тогда никто из рядовых пользователей не думал, что архитектура и принципы Intel 386 станут образцом на долгие годы, утвердив доминирование корпорации Intel в компьютерном мире. Только на переломе веков, спустя 15 лет, стали производиться 64-разрядные процессоры, предназначенные для применения в персональных компьютерах.
Процессор 80386 выпускался достаточно долгое время в самых различных модификациях. Первая версия процессора имела тактовую частоту 16 МГц, выполняя от 5 до 6 млн. операций в секунду. В 1987 г. тактовая частота увеличилась до 20 МГц (от 6 до 7 млн. операций в секунду). Планка в 25 МГц была взята в 1988 г. (8,5 млн. операций в секунду). Дальнейшее улучшение технологии позволило в 1989 г. достичь частоты в 33 МГц (11,4 млн. операций в секунду).
Количество транзисторов в процессоре 80386 (рис. 2.7) достигло рекордной для того времени величины – 275 000 (вначале использовалась технология 1,5 мкм, а в дальнейшем – 1 мкм).
Рис. 2.7. Процессор 386
С помощью нового процессора стало возможным адресовать 4 Гбайт памяти, а размеры виртуальной памяти достигли 64 Тбайт (терабайт). В 1985 г. такие возможности были просто ошеломляющи, но посмотрите на свой персональный компьютер – сегодня винчестер в 4 Гбайт явно маловат для мультимедийных применений!
Процессор 80386 выпускался не только корпорацией Intel, но и многими другими фирмами в самых разных модификациях. Например, наиболее популярным вариантом корпуса стал пластмассовый с планарными выводами, которые припаивались к материнской плате, что не допускало смены процессора. А компьютеры с таким типом процессора, которые до сих пор с успехом используются, имеют тактовые частоты 33 и 40 МГц. Заметим, что для промышленных компьютеров даже сейчас выпускаются не только процессоры 386, но и 16-разрядные 8088 и 80286.
Несмотря на тщательность проработки конструкции, к великому сожалению, в первых версиях процессора Intel 386 содержалась ошибка, касающаяся выполнения 32-разрядных арифметических операций. Поэтому на корпуса процессоров, которые неправильно функционируют в 32-разрядном режиме, нанесена маркировка "16 bit operations only". То есть такие процессоры могут правильно выполнять только программы, работающие в 16-разрядном режиме, а, например, установить Windows 95 на компьютер с таким процессором не удастся.
Так как многие возможности Intel 386 довольно долгое время были не востребованы широким кругом пользователей, то для уменьшения цены на компьютеры в 1988 г. был выпущен процессор, который маркировался суффиксом SX. Процессор Intel 386SX, как и 8088, обладал сокращенной в два раза шиной данных, а для адресации ячеек памяти использовалось всего 24 разряда вместо 32-х. После выхода Intel 386SX полноразрядные варианты стали носить название Intel 386DX.
Для портативных компьютеров в 1990 г. был выпущен процессор Intel 386SL. Он полностью повторял основные технические характеристики Intel 386SX. Для целей энергосбережения использовались технические решения, которые позволяли отключать неиспользуемые внутренние блоки. Кроме того, в архитектуру процессора включили кэш-память и средства управления памятью. Количество транзисторов в процессоре увеличилось до 855 000 (технология 1 мкм).
Прежде чем мы перейдем к обсуждению процессоров Intel 486, которые относятся ко второму поколению 32-разрядных процессоров, надо вспомнить еще об одной линии компьютерных микросхем – математических сопроцессорах, предназначенных для использования в компьютерах.
Когда-то тема использования сопроцессора была так же актуальна, как сегодня диспут о различных ускорителях для видеокарт. Теперь же, когда в процессорах Pentium сопроцессор встроен непосредственно в ядро, являясь одним из его многочисленных логических блоков, о нем вспоминают только программисты. Но поскольку принципы работы встроенного сопроцессора остались неизменными, и с учетом того, что в процессорах Pentium ММХ регистры сопроцессора используются по другому назначению, то кратко рассмотрим историю развития и этого семейства микросхем.
У компьютеров минимальная единица данных – это бит, который может быть равен 0 или 1. Наиболее популярное машинное слово – байт, в котором 8 битов. Если в байте все биты равны нулю, то считается, что в байте записано число 0.
Добавляя по 1 к содержимому байта, мы получим ряд:
• 0000 0001 – десятичное число 1;
• 1111 1111 – десятичное число 255 (в ряде случаев компьютер считает, что это минус единица).
Получается ряд целых чисел: 0, 1, 2, 3, …, 100, …, 255.
Микросхемы процессоров, рассматриваемые в этой книге, могут отлично проводить арифметические действия с любыми целыми числами: сложение, вычитание, умножение и деление. Но если попросить разделить, например пять на два, то процессор честно ответит – два. Оказывается, число 1,5 неизвестно процессору, т. к. оно является дробным числом.
Сделаем здесь небольшое отступление и рассмотрим используемые в информационных технологиях системы счисления. В компьютерной литературе широко используется двоичная и шестнадцатеричная системы счисления. Для непрограммиста такой подход несколько неожидан, т. к. в реальной жизни используется десятичная система счисления, например нумерация страниц этой книги. Правда, современный человек вполне усвоил, что компьютеры оперируют двоичной системой счисления: да – нет или 0–1, а вот шестнадцатеричная система счисления вызывает множество вопросов. Но тут следует сказать, что для описания работы современных процессоров такая система счисления дает возможность легко понимать содержимое регистров и разбираться с адресной информацией.
Для удобства запоминания связи между разными системами счисления рассмотрите табл. 2.1 и попробуйте перевести, не смотря уже в таблицу, несколько десятичных чисел, например 11 и 68, в разные системы счисления.
Обозначают, в какой системе счисления записано число, несколькими способами. Для шестнадцатеричных чисел наиболее очевиден вариант, когда к числу добавляется приставка Hex или Н. Но программисты обычно используют другой способ, который применяется в листингах программ и конфигурационных файлах. В этом случае шестнадцатеричное число начинается символами "0х", например 0x1, 0x367, 0xFF71.
К двоичные числам добавляется символ "Ь", например 100111b.
Для обозначения десятичных чисел в большинстве случаев не применяют дополнительных символов, хотя иногда может добавляться символ "D". В основном, такой способ выделения десятичных чисел применяется в литературе по языку Ассемблера.
Итак, возвращаясь к процессорам, заметим, что для вычисления дробных чисел используются специальные подпрограммы, которым требуется не один машинный такт, за который процессор может сложить два целых числа, а значительно больше. То есть при использовании в прикладной программе дробных чисел скорость работы компьютера резко снижается. Еще хуже дело обстоит, когда нужно рассчитать траекторию точек на окружности, используя тригонометрические функции – компьютер может задуматься очень надолго.
Для ускорения работы компьютера уже в эру процессора 8086 выпускались математические сопроцессоры, которые умели быстро выполнять операции с дробными числами, плавающей точкой, вычислять тригонометрические, экспоненциальные и логарифмические функции. На старых системных платах рядом с процессором (его также называют центральным процессором), всегда находился сокет для математического сопроцессора.
Аппаратный интерфейс позволял подключать сопроцессор непосредственно к выводам центрального процессора. Если в процессе работы программе надо было использовать сопроцессор, то центральный процессор передавал данные сопроцессору. Шина данных, когда это было нужно, переходила в распоряжение сопроцессора.
Математические сопроцессоры выпускались для процессоров 8086/8088, 80256, 80386 и имели маркировку 8087, 80287 и 80387. С первыми процессорами 486, в которых не было блока сопроцессора, можно было использовать сопроцессор 80387.
Пользователь для ускорения работы своего персонального компьютера мог купить сопроцессор и самостоятельно установить его в соответствующий сокет. Так как сопроцессоры были дорогими, то вместо микросхемы 80287 можно было установить 8087, а вместо 80387 – 80287.
Страницы← предыдущаяследующая →
Расскажите нам о найденной ошибке, и мы сможем сделать наш сервис еще лучше.
Спасибо, что помогаете нам стать лучше! Ваше сообщение будет рассмотрено нашими специалистами в самое ближайшее время.