Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Прямой, обратный и дополнительный код




 

Все действия в ПК выполняются в дополнительном коде.

Правило перевода.

Все данные в персональном компьютере должны быть представлены соответствующем типам данным, то есть для каждого типа данных в памяти выделяется определенное количество разрядов. Для примера переведем число -27 (+27) в форму байт со знаком:

1 Необходимо преобразовать число в двоичную СС расположить его в разрядной сетке старше разряд сетки будет знаковым. Если число положительно то 0, если число отрицательно то 1. После такого преобразование получается прямой код числа.

2 Обратный код числа положительно число в обратном коде выглядят так же как в прямом, для получения обратного кода отрицательного числа все разряды кроме знакого необходимо про инвертировать

3 Дополнительный код положительные числа в дополнительном коде выглядят точно так же как в прямом и обратном коде. Для перевода отрицательного числа в дополнительный код необходимо прибавить к обратному коду 1(единицу)

4 Для проверки можно произвести все действия в обратном порядке.

 

Типы данных

BIOS- базовая система ввода-вывода.

1

1.1 Целый байт без знака. Разрядность 8 диапазон значений от 0 до 255.

1.2 слово без знака, разрядность 16 диапазон 0…65535

1.3 двойное слово без знака, разрядность 32бита, диапазон значений 0…2^32-1

2 целые числа со знаками, -2^n-1…2^n-1-1

· байт со знаком, разрядность 8, диапазон -128…127

· слово со знаком, разрядность 16,

· короткое слово или … разрядность 32,

·  учетверенное целое, разрядность 64,

Каждый символ кодируется при помощи 8 разрядного кода.

Таблица ASCII

Так же может использоваться таблица юникод которая является 16 разрядной, данные могу организоваться в строки не прерывную последовательность байт, слов или двойных слов.

Двоично-десятичные числа. BCD-числа.

Данные представляются в двоичном виде но используются десятичные числа. BCD числа могут быть:

4

 BCD не упакованы. 1байте содержится одна десятичная цифра, её значение хранится в младшей тетради (тетрадка- тетра 4-сложена в ч) в разряда с [0…3]. Значение старших тетраде при обработке не увеличивается.

 

BCD- упакованы в одном байте содержится две десятичные цифры младшая хранится в младшей тетради, старшая в старшой.

18 разрядные упакованы в BCD формат, то есть содержит 18 тетрадь каждая из которых кодирует одну цифру, для кодирования знака используется старший разряд. Этот формат обрабатывается сопроцессором. 

5

Данные в формате с плавающей точкой ( вещественные числа ). Структура числа:

1 Знаковый байт. Старший без разрядной сетки. - 1 + 0

2 Характеристика(смещенный порядок) вычисляется по формуле E=p0+pсм

Pсм-это определенная в конкретном формате смешение порядка. Смешение зависит от количество разрядов, отведенных под характеристику и рассчитывается  по формуле pсм=2^(n-1)-1

Po-это степень числа полученное после нормализации, то есть приведенное к типу A,XX* Kn

 0<A<K           356,8=3,568*102

3 Мантисса-это значившие биты числа, записаны в нормальном виде. Так как в вычислительной      технике используется двоичная система счисления, нормализованное число будет принимать число 1,XX*2^p0 0<1<2 Так 1 присутствует всегда по этом дополнительный разряд в памяти для неё не выделяют.

Форматы вещественных чисел

В Мантиссу записывается , пустые разряды заполняются нулями. Для обозначения бесконечности используются числа с 0 мантиссой и максимально характеристикой. Знаковый бит определяет направления бесконечности. 0 является зарезервированным числом.

Алгоритм перевода числа из десятичного в вещественное

1 Перевести целую часть в двоичный код, (как всегда делим на 2)

2 Перевести дробную часть в двоичный код, (умножаем на 2)

3 Произвести процесс нормализации полученного числа.( мантисса )1.XX*2P0

( 1.0625=10101.0001=1.01010001*24)

4 Вычислить характеристику E=P0+Pсм=4+127=13110=100000112

5 Записать ответ с учётом знака числа.01000001101010001000000000000000

 

C354600016=> 1|10000110|101010001100000000000002

Регистры общего назначения процессора

Процессор Intel 486 содержит 832 регистров общего назначения. С целью обеспечения вертикальной совместимости между поколениями процессорами к одному физически реализованному 32 разрядному регистру возможно обращение с использование различных логических имён. Что позволяет использовать 8 логических имён, что позволяет 8, 16, 32 битные данные.

Регистр аккумулятор.

 

0

7

15

31

 

AL

AH

 

 

AX

 

EAX

 

Регистр база.( всё также тока место A ставим B )

Регистр счётчик. ( всё также тока место B ставим C )

Указатель стека.

15

0

31

 

SP

 

 

ESP

 

Указатель базы( dвсё также тока место S ставим B)

Индекс источники(рис.6)

Индекс приёмника(рис.7)

Название регистров происходит от закрепленных за ними функций, практически все регистры могут использоваться для сохранения данных пользователя. Осторожность нужно проявлять при использовании команд автоматически изменяющие регистры.

Например регистр SP используются для организации работы стека. Указываю на последнею занесенную запись, то есть на вершину стека. Его программное изменение можно привести к неправильной работе стека.

PUSH- занесение стека

POP- извлечение стека

Регистры специального назначения

Регистр EIP счетчик команд используется для хранения относительного адреса команды в памяти. Его могут изменять команды перехода. Счётчик команд автоматически увеличивается на величину считанной команды из памяти.

Регистр флагов FLAGS служит для сохранения флагов и битов управления. Флаг это признак совершение или не совершение операции или перехода.

Сегментные регистры CS SS DS ES FS GS используется при сегментации памяти для получения базового адреса.

Арифметико-логическое устройство

Предназначено для выполнения арифметических операции. На основе операции сложения и по разрядного выполнения логических операций. Операции выполняются на соответствующим разрядами без переносов и займов соседних разрядов.

X1 X2 ˅ диз. ˄ конь.

Ā

Плюс в кругляшке
0 0 0 0 1 1 0
0 1 1 0 1 0 1
1 0 1 0 0 1 1
1 1 1 1 0 0 0

 

Основой АЛУ является сумматор двоичного кода.

 

 

По результату вычисления АЛУ устанавливает флаги в регистре флагов

 

 

[0]CF- флаг переноса, флаг устанавливается в единицу, если был перенос из старшего разряда разрядной ячейки.

[2]PF- флаг чётности, устанавливается в единицу, если в младшем байте результата значение чётное.

[4]AF- флаг дополнительного переноса, флаг устанавливается в единицу, если был перенос между тетрадями младшего байта, из 3 в 4 разряды.

[6]ZF- флаг нуля, устанавливается в единицу, если все разряды результата равны 0.

[7]SF-флаг знака, копирует старший разряд, разрядной сетки результата.

[11]OF-флаг переполнения, флаг устанавливается, если результат вычислений не может уместится в диапазоне значений используемого типа данных.

-100-56=01100100

CF=1

PF=0

AF=1

ZF=0

SF=0

OF=1

-110-38=01101100

CF=1

PF=1

AF=0

ZF=0

SF=0

OF=1

Организация памяти

Память система ввода-вывода

15 Мбайт в 80286 и 80386SX

31 Мбайт в 80386L/SLC

4095 Мбайт в 80386DX, 80486 и Pentium

64 Гбайт в Pentium Pro-Pentium 4

Расширенная память

(Extended memory)

Структура памяти показанная на рисунке 1.6 одинакова для всех компьютерных систем, построенных на базе процессоров Intel, от i8088 до Pentium 4.

                   

 

 

Системная область 384 Кбайт

 

1 Мбайт памяти, доступной в реальном режиме процессора

 

 

ТРА или стандартная память 640 Кбайт

 

 

Память разделяется на 3 части: память для транзитных программ – TPA (Transient Program Area) или иначе стандартная память (Conventional memory), системная область и расширенная память XMS (Extended Memory System). Наличие XMS определяется типом микропроцессора. В системах PC24 и XT25, построенных на микропроцессорах i8086/88, расширенная память отсутствует. В компьютерных классах IBM PC/XT область TPA составляет 640 Кбайт, системная область или иначе верхняя память UMA (Upper Memory Area) занимает 384 Кбайт – итого 1 Мбайт. Область памяти размером 1 Мбайт, расположенная в начале адресного пространства, иногда называется реальной (real), поскольку она доступна в реальном режиме любому микропроцессору семейства Intel 80x86.

Расширенная память доступна для процессоров от 80286 до Pentium 4. Персональные компьютеры на базе этих процессоров называются машинами класса AT26. Системы PS/1 и PS/2, выпушенные фирмой IBM, также имеют доступ к расширенной памяти. Их иногда называют ISA – или EISA-машинами (ISA- Industry Standard Architecture, EISA- Extended ISA) по названию используемой системой шины. Для вычислительных систем PS/2 соответственно принято название MCA-систем (Micro Channel27 Architecture).

В системах на базе Pentium 4 вместо шины ISA используется, в основном, шина PCI (Peripheral Component Interconnect). С появлением микропроцессора i80286 расширенная память становится доступна, ее размер пока ограничивается 15 Мбайт. В персональных компьютерах на базе 80386DX, 80486 и Pentium максимальный размер XMS составляет 4095 Мбайт – в дополнение к 1Мбайтам реальной памяти. Начиная с Pentium Pro, определенный объём XMS-памяти достигает 4 или 64 Гбайт. В ISA-машинах имеется 8-разрядная периферийная шина для обмена с 8-разрядными внешними устройствами системы PC/XT. В машинах классах AT, которые также называются ISA-машинами, используется 16-разрядная периферийная шина и процессор от i80286 и выше. Шина EISA шириной 32 бита не нашла широкого применения; сейчас её можно обнаружить в некоторых старых машинах на базе i80386DX или i80486. Заметим, что все новые версии шины ISA были совместимы шинами ISA: 8- и 16-битной EISA. Аналогично, внешнее устройство с 16-разрядным интерфейсом могло функционировать с 16-разрядной шиной ISA или 32-разрядной шиной EISA.

Во многих персональных компьютерах на базе i80486 использовалась локальная шина VESA (Video Electronic Standard Association), или точнее VL-bus. Локальная шина позволяет подключать дисковые накопители и видеосистему к микропроцессору отдельно от других устройств. За счёт локальности шины реализуется 32-битный интерфейс на частоте процессора. Последняя версия шины VESA поддерживала 64 битный обмен данными с Pentium, что, не смотря на возможность на конкуренции локальной шины VL-busс шиной PСI, не вызвало особого интереса у разработчиков персональных вычислительных систем. Шины ISA и EISA работают на частоте все во лишь 8МГц, что ограничивает производительность системы при работе с дисками и видеоадаптерами. Тактовая частота шины PCI-33 МГц, разрядность составляет 32 или 64 Мбита. Эта шина была специально разработана для системы на базе Pentium.

Режим работы процессора

Процессоры начиная с Intel 286 могут работать в двух режимах:

1. Режим реальных адресов (реальный режим)

В нём любой процессор рассматривается как Intel 8086 с расширенным набором команд. В реальном режиме используется 20 разрядные шины адресов, то есть максимальный объём памяти = 1М = 1024 Кбит.

Размер сегмента 64Кбит

2. Защищенный режим адресов (Защищенный режим)

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

Память может разбивается на сегменты размером от 1байта до всего объёма памяти. Используется вся шина адреса, то есть вся доступная память.

Сегментирование памяти

Сегментирование- это разбиение памяти на логические участки называемые сегменты.

Причины:

С развитием вычислительной техники возникает потребность увеличивать постоянно объём памяти. Для обращении к ячейке памяти процессора должен устанавливать n разрядный адрес, то есть физический адрес ячейки . Чем больше объём оперативной памяти тем больше разрядность и адрес. Адрес ячейки которой необходимо произвести обращение хранящейся в команде, следовательно при увеличении объёма памяти увеличивается размер команды и соответственно всей программы. Для оптимизации накладных расходов место физического адреса стали использовать относительный адрес.

Физический адрес (ФА)

Это уникальный адрес ячейки памяти который необходим указывать при обращении к ней.

Базовый адрес (БА)

Это физический адрес первого байта, сегмента, то есть адрес сегмента.

Относительный адрес (ОА)

Это адрес относительно начала сегмента.

База- это старший 16-разрядовый базовый адрес.

 

Пример:

76-105

ПК: 01001100 11101001

: 10110011 00010110

: 00000001 00000001

ДК: 00110100 10010111

10010111+00110100=11001011

CF=0

PF=0

AF=0

ZF=0

SF=1

OF=0

Каждый сегмент имеет следующие атрибуты:

1. Адрес сегмента

2. Размер

3. Тип сегмента и атрибут зашиты

 

Режим работы процессора

Процессор 8086 могут адресовать 1Мбайт в памяти, одновременно будет доступно 4 сегмента. Это так называемый режим реальных адресов, которые все программы запускаются в едином адресном пространстве.

Далее процессор X86 в рамках как называемого защищенного режима (p-mode) было организовано линейного адресного пространства объёмам 232байт. Которая допускает создание практически любого количества сегментов.

В защищенном режиме ОС является диспетчером памяти и выделяет виртуальный адрес пространства для каждого из запущенных приложений.

15

0

Разряд










Последнее изменение этой страницы: 2018-04-12; просмотров: 377.

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