рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Основы сетевых технологий автоматизации. 66

Основы сетевых технологий автоматизации. 66 - Конспект Лекций, раздел Науковедение, КОНСПЕКТ ЛЕКЦИЙ ПО ДИСЦИПЛИНЕ ВЫЧИСЛИТЕЛЬНЫЕ МАШИНЫ, СИСТЕМЫ И СЕТИ 1.архитектура Вычислительных С...


1.Архитектура вычислительных систем

-------------

Организация вычислительной системы. Состав устройств и принципы их объединения. Классификация ЭВМ офисного и промышленного назначений. Понятие интерфейса. Классификация интерфейсов. Внутрисистемные интерфейсы ЭВМ. Классификация и ретроспективный обзор. Взаимодействие ресурсов ЭВМ. Обсуждаются терминология, основные принципы организации ЭВМ и систем вычислительных машин, комплексов, систем и сетей. Излагаются основные этапы развития ВМ

-------------

 

Магистрально-модульная архитектура

 

Назначение.

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

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

Таймер – устройство для контроля и измерения времени.

Контроллер прерываний выполняет следующие действия:

реализует дисциплину, обслуживает внешние устройства по прерываниям;

обрабатывает внутренних программных прерываний.

Контроллер прерываний еще называют IRQ контроллером (Interrupt ReQuest).

Контроллер ПДП (прямого доступа к памяти)

Контроллер ПДП еще называют DMA контроллер (Direct Memory Access).

 

Представление данных в ЭВМ

 

Арифметико-логические основы ЭВМ

Единица хранения информации – это бит (binary digit). Для хранения информация ЭВМ использует двоичную систему исчисления. В двоичной системе исчисления вся информация представляется в виде 0 и 1.

Использование двоичной системы обусловлено:

наличием технических средств удобно хранящих и преобразующих информацию;

p = 2 близко к оптимальному e = 2,7.

 

Q = N*n

N – число цифр необходимых для представления информации;

n – основание системы исчисления;

Q – трудозатратность.

Необходимо, чтобы Q было минимально. Отсюда следует, что n было как можно ближе к e = 2,7. По этой приняли n = p = 2.

Но были разработки по созданию ЭВМ работающим, не с двоичной системой исчисления, а с троичной (p = 3). Такие разработки также проводились и в России, и был создан экспериментальный образец под названием Setum. Но дальше опытных образцов данные разработки не продвинулись.

 

Адресуемая единица представления информации – это байт.

 

A) D7             D0

 

адрес старший бит младший бит

 

Набор из 8 двоичных разрядов может представлять:

целое число;

условный номер символа (иероглиф);

числа с плавающей запятой;

двоично-десятичный формат (BCD формат).

 

Целочисленный формат данных

 

Целочисленными форматами данных являются byte, shortint, word, integer.

 

Основные математические факты целочисленного представления информации

Позиционные системы исчисления. Каждому разряду в двоичной системе исчисления или в позиционных системах, вообще, приписывается свой вес.

Каждое целое число Z представляется в позиционной системе исчисления:

Z = αnpn + αn-1pn-1 +…+ α1p1 + α0p0.

Αi – иероглиф, кодирующий состояния i-го разряда.

Для десятичной системы αi = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) = 10.

Для двоичной системы αi = (0, 1) = 2.

Для восьмеричной системы αi = (0, 1, 2, 3, 4, 5, 6, 7) = 8.

Для шестнадцатеричной системы αi = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F) = 16.

P – число являющееся основанием системы исчисления.

Веса разрядов образуются как степени основания:

gi = pi.

Младшему разряду предписывается вес 1, поэтому удобно начинать с 0.

Во всех позиционных системах исчисления принято записывать:

Z = <αnαn-1αn-2… α1α0>.

Пример.

Z = <1024> = 1*103 + 0*102 + 2*101 + 4*100

 

Соответствие чисел в двоичной, десятичной и шестнадцатеричной системах исчисления (табл. 1).

Таблица 1

Z «10» «2» «16»
<0> <0000 0000> <0>
<1> <0000 0001> <1>
<2> <0000 0010> <2>
<3> <0000 0011> <3>
<4> <0000 0100> <4>
<5> <0000 0101> <5>
<6> <0000 0110> <6>
<7> <0000 0111> <7>
<8> <0000 1000> <8>
<9> <0000 1001> <9>
<10> <0000 1010> <A>
<11> <0000 1011> <B>
<12> <0000 1100 <C>
<13> <0000 1101> <D>
<14> <0000 1110> <E>
<15> <0000 1111> <F>
<16> <0001 0000>  

 

Пример

Z = <1001> = 1*23 + 0*22 + 0*21 + 1*20 = 8 + 0 + 0 + 1 = 9

 

Состояние тетрады кодируется одним иероглифом шестнадцатеричной системы, поэтому байт записывается двумя иероглифами шестнадцатеричной системы.

 

Пример

1011 0110(2) = 1*p7 + 0*p6 + 1*p5 + 1*p4 + 0*p3 + 1*p2 + 1*p1 + 0*p0 = 1*128 + 1*32 + 1*16 + 1*4 + 2 = 182

1011 0110(2) = B6(16)

 

Распространение шестнадцатеричной системы связано с удобством восприятия двух кодов в пределах одного байта.

 

Перевод целых чисел из одной системы исчисления в другую

 

Z = αnpn + αn-1pn-1 +…+ α1p1 + α0p0.

Схема Горнера.

Z = (((αnp + αn-1)p + αn-2)p + … + α1)p + α0

 

6p3 + 3p2 + 2p1 + 8p0 = ((6p + 3)p + 2)p + 8

 

Разделить Z/p остаток = α0.

Частное делится на p, остаток = α1.

Частное делится на p, остаток = α2.

……………

 

Формат Byte

 

Формат byte – однобайтовый целочисленный формат.

Z = D7*27 + D6*26 + ... + D1*21 + D0*20

Минимальное число представимое в этом формате 0, а максимальное – 255.

Zmax = 2n – 1.

Таким образом, в формате byte можно представить только положительные числа. Число, например –2 в этом формате представить нельзя.

 

 

Формат Shortint

 

Shortint – однобайтный формат для представления положительных и отрицательных чисел, отрицательные числа представляются в дополнительном коде.

В данном формате старший бит (D7) используется для определения вида числа (положительное или отрицательное). Если в старшем бите (D7) находится 0, то число считается положительным. Если в нем находится 1, то это число – отрицательное.

D7 = S

S = 1 → Z < 0

S = 0 → Z ≥ 0

 

Пример:

 

S = 1: |Z| = 0000 0101 = 5(2) – двоичное представление модуля

Этот код инвертируется

= 1111 1010

+ 1

Zдоп = 1111 1011 = (-5)(10)

 

Правило получения модуля отрицательного числа

 

инверсия

прибавление 1

 

Пример:

 

Z = 1000 0000 = (-128)(10)

|Z| = ?

0111 1111 + 1 = 1000 0000 = 128

Z = 1111 1111 = -1(10)

|Z| = 0000 0000 + 1 = 1(10)

 

 

Формат Word

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

 

Hi   Lo
D15             D8   D7             D0
                                 

 

старший байт младший байт

 

В машине младший байт пишется перед старшим.

Addr) Lo Addr + 1)Hi

 

Z = D15*215 + D14*214 + ... + D1*21 + D0*20.

Zmin = 0.

Zmax = 65535 = 216 – 1.

 

Формат Integer

 

Integer – знаковый целочисленный двух байтный формат.

Бит D15 используется для определения вида числа (положительное или отрицательное). Отрицательное число, как и в формате shortint, записывается в дополнительном коде. Если в старшем бите старшего байта (D15) находится 0, то число считается положительным. Если в нем находится 1, то это число – отрицательное.

D15 = S

S = 1 → Z < 0

S = 0 → Z ≥ 0

 

Zmin = 1000 0000(2) = (-32768)(10)

Zmax = 0111 1111(2) = 32767(10)

 

Формат Chart

 

Char – однобайтный формат для представления номер символа в таблице ASKII (American Standard Code of Information Intechange).

Каждый иероглиф пронумерован в таблице ASKII и при операциях с символьными данными машина пересылает только номер этого символа. Предполагается, что знакогенератор видеокарты правильно интерпретирует символ.

Максимальное число состояний C = 256.

0…127 – зарезервированные символы

 

Пример:

ord(‘A’) = 65; – номер символа ‘A’.

 

Формат Boolean

 

Boolean – логический формат используется при вычислении логических выражений.

С = { true  
false  

 

if A < B then <выполняемый оператор>;


C

 

C:= (A < B);

if C then <выполняемый оператор>;

 

Представление вещественных чисел в ЭВМ

Форматы с плавающей запятой

 

В десятичной системе исчисления рациональный числа представляются в виде экспоненциального (полулогарифмическом) формате.

S 0,<M>*10<P>,

где S – знак числа,

M – мантисса,

P – порядок числа.

Например:

π = 0,314*101 = 3,14

с = 0,3*109 м/с = 300000000 м/с – скорость света

 

Представление чисел во внутри машинном коде

 

  Hi   Lo
  D15             D8 , D7             D0
Вес         1/2 1/4 1/8         1/256
  =       = = = =   = = =         =
  27       23 22 21 20   2-1 1-2 2-3         2-8

 

Представление чисел с фиксированной запятой

1,625 = 1 + 0,625 = 1 + 0,5 + 0,125

2-1 2-3

 

 

,

Ограничение такого вида чисел:

σ = 1/28 = 0,0039…

 

 

Формат с плавающей запятой

 

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

 

Мантисса

 

Мантисса хранит всегда в нормализованном виде числа.

0,1xxxx

Старший разряд мантиссы всегда в единице, иначе это не нормализованный вид. По этой причине все форматы с плавающей запятой эту единицу скрывают. Этот прием называют подавление старшего разряда.

 

S x x x x   – мантисса с плавающей запятой

 

M

 

Число разрядов мантиссы определятся точностью представления данных.

 

Вес 1/4 1/8 1/16 1/32 1/64 1/128 1/256 1/512   1/232

 

4 байта

 

Порядок числа

П: 0000…0 → -128 = -27

1111...1 → +127

 

Стандартные вещественные форматы

 

Название типа Длина, байт Число разрядов мантиссы (10) Число разрядов мантиссы (2) Диапазон порядка (10)
single 7...8 -38...38
real 11…12 -38…38
doble 15…16 -308…308
extended 19…20 -4951…4932

 

При использовании типа realпрограммист отказывается от использования сопроцессора. Лучше всего использовать тип extendedв том случаи, если объем памяти не лимитирован. Процессор всегда считает в формате extended, а затем уже идет ограничение.

Каждый из этих форматов представляет информацию с ограниченной точностью (ε).

 

Пример:

single            
  1/2 1/4 1/8   1/2i     2-24

ε = 1/224 ≈ 5*10-14

Программа для определения ε

Program EpsilonDetect;

var eps:single;

begin

eps:=1;

while eps+1>1 do

eps:=eps/2;

writeln(eps);

end.

 

Машинная ε представляет опасность при действиях типа сложения с тоуи зрения накопления ошибок.

 

Двоично-десятичный формат

 

Упакованный (BCD)

BCD-формат (Bynary – Code Deimal)

Пример:

96(10) = 10010110(BCD)

↑ ↑

8+1=9 4+2=6

96(10) = 60(16) = 0110’0000(2)

 

Пример:

111(10) =   (BCD)

 

Формат BCD не экономичен.

 

-48521    
-

 

Этот формат применяют для хранения информации базы данных. Также формат BCD удобен для индексации.

 

Неупакованный

 

Все цифры числа размещаются в отдельных байтах в виде кодов ASCII.

 

Пример:

 

-713(10) $2B   $37   $3   $33
«-» «7» «1» «3»
                       

 

Примечание:

Значок $ означает, что число записано в шестнадцатеричной системе исчисления.

 

2. Принцип выполнения арифметических операций

 

Основной «число грыз» машины – это сумматор.

2.1. Операции с целыми числами

кроме сумматора есть так называемые флажки.

Флаг переноса (Carry Flag)

Обозначение: C, CY, CF.

Флаг переноса – это однобитовый регистр, хранящий перенос из старшего разряда.

 

Пример:

+  
С
 
С = 1

C зависит от операндов.

Флаг дополнительного переноса (Auxiliary Carry Flag)

Обозначение: AF.

AF означает перенос из третьего в четвертый разряд, т.е. между тетрадами.

Флаг нуля (Zero)

Обозначение: Z, ZF.

Z = 0, если в результате суммирования получен не ноль (∑ ≠ 0).

Z = 1, если ∑ = 0.

Флаг знака (Sign Negative)

Обозначение: S, SN, N.

S = 1, если результат в дополнительном коде число отрицательное.

Флаг переполнения (Overflow Flag)

Обозначение: V, O, OV, OF.

Флаг переполнения показывает находится ли результат внутри диапазона представимых чисел.

2.2. Сложение (ADD)

Числа предполагаем беззнаковыми целыми, т.е. сложение для всех форматов одинаково.

Интерпретация результата зависит от того, как операнды были описаны.

Пример:

+ 106(10)   0110 1010 C = 0 S = 1 Z = 0 V = 1
  0010 1110
  152(10)   1001 1000

 

+ 227(10)   1110 0011 C = 1 S = 0 Z = 0 V = 0
  0100 0111
  298(10) C = 1 0010 1010

 

0010 1010(2) = 2A(2) = 6*16 + 10*1 = 42

 

Таким образом, при сложении беззнаковых чисел признаком переполнения является флаг переноса (C).

 

Многобайтное сложение

 

ADC (Add with Carry) – сложение с переносом

 

Пример:

 

A = 0111’0101 1110’1111

B = 1111’1111 1100’1011

 

Lo: 1110’1111
1100’1011
C = 1 1011’1010

 

Hi: 0111’0101 ← C
1111’1111
C = 1 0111’0101

 

Z = 0111’0101 1011’1010 C = 1

 

2.3.Вычитание

 

Компьютер умеет только складывать, по этому вычитание происходит по следующей схеме:

вычитаемое переводим в дополнительный код

складываем уменьшаемое и дополнительный код вычитаемого

 

Пример:

 

A = 0101’0111 = 5*161 + 7*160 = 87(10)

B = 0100’1000 = 4*161 + 8*160 = 72(10)

Z = A – B = 87 – 72 = 15

дополнительный код (B) = 1011’0111 + 1 = 1011’1000

 

A + (-B) = + 0101’0111 C = 1 Z = 0 S = 0 V = 0
1011’1000
  0000’1111

 

A + (-B) = F(16) = 15(10)

V = 0, так как был перенос в старший разряд и из старшего разояда.

 

Пример:

A = -64(10) = 4*161 + 0*160 = 40(16) = 0100’0000

B = 83(10) = 53(16) = 0101’0011

Z = A – B = -64 – 83 = -147(10)

Так как |Z| > 128, то флаг переполнения будет установлен в 1 (V = 1).

 

ДК(A) = 1011’1111 + 1 = 1100’0000

ДК(-B) = 1010’1100 + 1 = 1010’1101

+ 1100’0000 V = 1
1010’1101
  0110’1101

 

0110’1101(2) = 6*16 + D = 96 + 13 = 109

 

2.4.Умножение

 

Основные принципы умножения

 

Z = X*Y

Принимаем, что числа беззнаковые.

Y = yn – 1*2n – 1 + yn – 2*2n – 2 + ... + y1*21 + y0*20,

где yi может принимать значения 0 или 1

Z = Y*X = (X*yn – 1)*2n – 1 + (X*yn – 2)*2n – 2 + ... + (X*y1)*21 + (X*y0)*20

Выражение в скобках означает, что каждое значение зависит от yi, если yi = 0, то этого выражения вообще нет.

Умножение двоичного кода числа на двойку можно производить путем левого сдвига.

 

Пример:

0000’0101 = 5(10)

0000’1010 = 10(10)

 

Умножение на 2i сводится к i сдвигам влево.

Умножение сводится к сложению кода X сдвинутого на n – 1 разряд влево при условии, что yn1 = 1. Если yn1 = 0, то сдвинутый код просто опускается.

 

Пример:

X = 1001’0110 = 9*16 + 6 = 150(10)

Y = 1010’1011 = 171(10)

Z = X*Y = 150*171 = 25650(10)

 

x

 

0110010000110010 = 6*163 + 4*162 + 3*161 + 2*160 = 24576 + 1024 + 48 +2 = 15650(10)

 

При умножении 8 разрядных чисел получаем 16 разрядное число ([8]*[8] = [16])

 

[n]*[n] = [2n]

 

В случаи разных разрядов результат будет равен сумме разрядов.

 

Можно свести все операции к перемножению целых чисел.

 

В случаи отрицательных операндов:

Z = X*Y, где X < 0 и Y < 0, то X и Y представлены в дополнительном коде и их произведение дает неверный результат.

 

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

анализ SX и SY

если SX = SY, то X1:= |X| и Y1:= |Y|

Z = X1*Y1 = |X|*|Y|

если SX SY, то X1:= |X| и Y1:= |Y|

|Z| = X1*Y1

Z получаем при переводе |Z| из дополнительного кода


5. Аппаратура

 

Принципы организации процессорного ядра

 

Арифметические операции над операндами из памяти

Безусловные и условные переходы

Вход – выход с периферийными устройствами

 

Условные и безусловные переходы

 

Есть естественный порядок выполнения инструкций программы. Черты интеллекта у машины связаны с изменением естественного хода операций.

 

 

Функциональная схема процессорного ядра

 

 

PC (Program Coun) – регистр хранящий адрес выполненной инструкции

IR (Instruction Register) – регистр хранящий код инструкции. Каждый разряд инструкции играет роль ключа для управления передачи информации внутри процессора.

PSW (Processor Statys Word) – слово-состояние процессора, регистр флагов отражающий результаты работы сумматора или АЛУ (Z, S, OV и т.д.).

PSW – программа доступа и его можно анализировать инструкциям.

SP(Stack) – область памяти, обеспечивающая быстрое сохранение – изъятие информации по алгоритму.

 

Работа stack

 

Stack Point – указатель на адрес памяти, где хранится вершина stackа.

 

5.1.Реализация переходов

 

<адрес> → PC

Следующая выполняемая инструкция будет та инструкция, которая указана в команде перехода.

Команда перехода: JMP <адрес>.

Команда перехода может быть условная: JMP <адрес> [условие].

 

Процесс выполнения команд и реализация переходов

 

 

PC:= PC + 1 – инкрементация программы счетчика.

 

5.2.Использование подпрограмм

 

Для реализации вызова подпрограммы используется механизм стековой памяти. В эту память в начале выполнения программы сохраняются регистры процессора, а в конце подпрограммы регистры восстанавливаются. Подпрограмма, в итоге, завершается командой возврата.

 

 

ReT:

Восстанавливает регистры из стека.

A + 1 → PC

 

 

Стек позволяет автоматически хранить в вершине актуальный адрес возврата и PSW.

Глубина вложения определяется длиной памяти.

Реализуется механизм динамического распределения памяти. Стек сам следит за занятием и освобождением памяти.

 

5.2. Использование системы прерываний

Прерывания – разновидность подпрограммы, вызов которой происходит по внешнему сигналу.

 

 

IRQ – InterRupt reQuest – запросы на прерывание.

На персональных компьютерах существует 16 IRQ.

Работа IRC сводится к:

при получении сигнала IRQn IRC берет из памяти адрес перехода An и записывает его в PC;

CPU начнет выполнять программу прерываний, предназначенную для обработки запроса IRQn, который завершится возвратом в прерванную программу по команде ReT, также как и при выполнении обычной программы.

 

 

Процесс выполнения программы

 

 

Источником прерываний (IRQ) могут быть сигналы периферийных устройств: параллельный и последовательный порта, таймер и т.д.

В машинах IBM в дополнение к рассмотренному механизму аппарата прерываний имеются программные прерывания. Программные прерывания удобны для использования функций операционной системы. Использование программных прерываний позволяют обеспечить реентерабельность (многовходовательность).

 

5.4. Архитектура центрального процессора семейства x86.

 

Intel 8086

Intel 186

Intel 286

Intel 386

Intel 486

Intel Pentium

 

Рассмотрим организацию процессора Intel 8086.

 

 

АЛУ – арифметико-логическое устройство.

Все эти регистры и указатели 16 разрядные.

N = 216 = 64566 – число состояний 16 разрядного регистра.

 

IP – Instruction Point – указатель команды.

SP – указатель стека.

CS – Code Segment – начальный адрес сегмента.

SS – Stack Segment – регистр указывающий смещение относительно базового адреса.

Физические адреса вычисляются по специальному алгоритму.

Базовый регистр хранится в специальном регистре: BP – Base Point.

SI (Stack Index), DI (Data Index) – индексные регистры. SI, DI – регистры для хранения номера элемента в массиве.

DS – Data Segment – адрес сегмента данных.

ES – Extention Segment – сегмент расширения.

 

Вычисление физического адреса в процессорах x86.

 

 

N = 220 = 1 033 056 = 1 Мб

Формат адреса при записи на Assembler:

($3411 : $123A)

↓ ↓

адрес сегмента смещение

 

 

В 16 разрядном регистре 7 разрядов не используются.

 

                               
- - - - OF DF IF TF SF ZF - AF - PF - CF

 

PF – Parity Flag – флаг паритета.

PF = 1 – если младшие 8 разрядов результата содержат четное число 1.

Принцип контроля паритета используется для проверки правильности передачи данных.

AF –

ZF – флаг нуля.

SF – флаг знака.

TF – Trace Flag – флаг трассировки.

Если этот флаг установлен, то после каждой операции процессор будет останавливаться.

IF – Interrupt Flag – флаг разрешающий прерывания.

Если IF = 1, то прерывания разрешены.

Если IF = 0, то контроллер прерываний не реагирует на внешние прерывания.

DF – флаг направления.

При обработке списков флаг указывает направление обработки с первого символа или с последнего.

OF – Overflow Flag – флаг переполнения.

OF = 1, если переносы из старшего и в старший разряды будут не совпадать.

 

5.5. Режимы адресации процессора x86.

 

Режим адресации – способ управления операндами.

Существуют режимы адресации данных и режимы адресации переходов.

Режим адресации данных

Непосредственный (данные являются частью команды).

Прямой

Команда хранит только часть физического адреса, вторая сдвигаемая часть адреса должна находится в DS, который должен формироваться до выполнения команды.

Регистровый

Данные хранятся в указанном командой регистре.

Регистровый косвенный

Смещение адреса (эффективного адреса) находится в базовом регистре Bx или в индексном регистре, который определяется командой.

Базовый индексный

Эффективный адрес равен сумме базового и индексного регистров.

EA = { Bx } + { SI }
BP DI

Регистровый относительный

EA = { (Bx) } + { 1, 2 байтное смещение в команде }
(BP)
SI
DI

Относительный базовый индексный

Эффективный адрес формируется по следующей схеме:

EA = { (Bx) } + { (SI) } + { 1, 2 байтное смещение в команде }
(BP) (DI)

 

Примеры адресации данных:

(Bx) = $0158

(DI) = $10A5

(DS) = $2100

(OS) = $1B57

 

Прямой режим адресации

EA = $1B57

Физический адрес: ФА = $1B57 + $2100

$1B57

$21000

$22B57

Регистровый

Регистровый косвенный

EA = $0158 (смещение)

OA = $0158

$21000

$21158

Базовый индексный

 

$01580

$ 10A5

ФА = $02625

Регистровый относительный

 

ФА = $0158 * 16 + $1B57 = $1580 + $1B57 = $30D7

 

Адресация переходов

Внутрисегментный прямой

Фиктивный адрес перехода равен сумме смещения, которое находится в команде и текущего содержимого IP.

Смещение OS обычно однобайтное.

Внутрисегментный косвенный

EA вычисляется как содержимое регистра и ячейки памяти, при этом содержимое IP заменяется эффективным адресом перехода + CS.

IP ← EA + CS

 

Межсегментный прямой

Межсегментный косвенный

В этом режиме содержимое IP и CS заменяются содержимым двух смежных слов памяти. Эти слова адресуются любым способом кроме регистрового и непосредственного.

Межсегментный переход может быть только безусловным.

 

Пример:

(Bx) = $1256

(SI) = $528F

(EA) = $20A1

(DS) = $2100

 

Внутрисегментный прямой

ФА = EA + (DS)*16(10)

$20A1

$21000

$230A1

Внутрисегментный косвенный с участием регистра Bx

ФА = (Bx) + (EA) + (DS)*16(10)

$1256

$21000

$242F7

Базовая индексная адресация (Bx и SI)

ФА = (Bx) + (SI) + (DS)*16(10)

$1256

$528F

$21000

$274E5

 

6. Элементы программирования Assembler

 

Структура программы

 

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

Головная программа будет написана не на Ассемблере, а на языках высокого уровня (Delphi, Visual Basic, др.).

 

6.1. Формат Ассемблерных команд

 

Общий вид Ассемблерной команды:

Метка: Мнемоника Операнд, Операнд; Комментарий

↑ ↑

операнд получатель операнд источник

 

 

Примечание:

Если после команды комментарий не последует, то точку с запятой ставить не нужно.

 

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

Метка – символический адрес с ним связан физический адрес первого байта команды.

Операнд – символический адрес объекта, с которым производится работа.

Обозначение операнда и содержит режим адресации.

 

Пример:

BADDR: ADD Ax, Count [Bx];

сложение счетчика с именем Count (используется регистровая относительная адресация). Count рассматривается как массив, а индекс этого массива, находится в регистре Bx, результат сложения размещается в регистре Ax.

 

BADDR: ADD Ax, Count [Bx]

↑ ↑

регистровая адресация регистровая относительная

индексная адресация

 

6.2. Команды передачи данных

 

Взаимодействие регистров процессора и памяти:

MOV – команда перемещения

LEA – команда загрузки EA

LDS – команда загрузки DS

LES – команда загрузки ES

 

Для организации взаимодействия регистров процессора и регистров периферийных устройств, не обходимо различать входящую (IN) и выходящую (OUT) информацию.

 

ПРАВИЛО

Положительное направление перемещения информации (вывод) от процессора к периферийным устройствам.

 

MOV DS, Ax

Ax   DS
       
         

 

MOV AL, ‘E’

AL ← ‘E’

Помещение в AL кода символа ‘E’

MOV [Bx], Dx

Переслать содержимое Dx в ячейку адресуемую Bx.

([Bx]) ← (Dx)

 

 

MOV Ax, Y[BP][SI];

переслать в Ax содержимое ячейки определенное суммой регистров BP, SI и смещения Y, которое является частью команды

 

 

Поменять местами содержимое двух ячеек памяти.

 

 

MOV AL, OPR1; AL ← (OPR 1)

MOV BL, OPR2; BL ← (OPR 2)

MOV OPR2, AL; OPR2 ← (AL)

MOV OPR1, BL; OPR1 ← (BL)

 


2. Основы построения вычислительных систем

-----------------------------

Принципы построения вычислительных машин (ВМ), модели вычислений, многоуровневая организация вычислительных процессов, аппаратные и программные средства, классификация, назначение.

Понятия о функциональной, структурной организации и архитектуре ВМ. Основные характеристики ВМ, методы оценки.

Шина ISA (EISA). Терминология и обозначения. Общая характеристика шины и порядок обмена.

Название и назначение сигналов шины. Электрические характеристики линий.

Циклы магистрали. Обмен с памятью, периферийными устройствами, регенерация памяти .

Программная поддержка обмена по шине EISA. Связь сигналов внутрисистемной магистрали и команд языка Ассемблер.

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

---------------------------------

 

Элементы схемотехники ЭВМ

 

– Конец работы –

Эта тема принадлежит разделу:

КОНСПЕКТ ЛЕКЦИЙ ПО ДИСЦИПЛИНЕ ВЫЧИСЛИТЕЛЬНЫЕ МАШИНЫ, СИСТЕМЫ И СЕТИ

Механико машиностроительный институт... Кафедра электронного машиностроения... КОНСПЕКТ ЛЕКЦИЙ ПО ДИСЦИПЛИНЕ...

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

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Триггер
Основной элемент, на котором строится работа машины, называется триггер. Триггер -

Наибольшее распространение получила система напряжения TTL (0..5В).
TTL –транзисторно – транзисторная логика. Существуют другие системы: ЭСТЛ, МОП и др.   Интервалы работы устройства: 0…1,4В – низкий

Вентиль (клапан или ключ).
Клапан – по сути логическое “и”. На схеме обозначается - &.  

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

Внутренние и внешние интерфейсы
Внутренние интерфейсы – не выходящие за рамки системного блока, а внешние – выходящие за рамки. Внутренний интерфейс: ISA- 8 (число “8” обозначает, что линий данных 8), ISA- 16, E

Структура аппаратных средств параллельного порта (SPP)
E (Enable) –разрешение; R (Read) – читать; S (Set) – устанавливать; DR (Data Re

Назначение линий внешнего интерфейса стандартного параллельного порта
  Сигнал Направление Контакт Назначение  

Адресация разрядов интерфейса Centroniсs
  Линии внешнего интерфейса подключены к разрядам регистров параллельного порта, поэтому программная запись в регистры параллельного порта приводит к изменению состояния линии внешнег

Обработка результатов ввода сигналов с параллельного порта
  1. Инверсия А:= not B; {если B = 01011100, то A = 10100011} 2. Логическое “И” (логическое умножение, конъюнкция) А:= B and C; Ре

Альтернативные режимы параллельного порта ПК
  IEEE 1284 – международный стандарт на параллельный порт. Compatibility Mode – режим совместимости. Программный однонаправленный вывод параллельного порта.

Функции BIOS для параллельного порта
  Вопрос в том как узнать базовый адрес параллельного порта. Базовая система ввода-вывода BIOS имеет область данных Data Ared memory

Физическая реализация родственных интерфейсов
  В последовательном интерфейсе далеко не всегда используют двуполярные сиг­налы RS-232C — это неудобно, хотя бы из-за необходимости использования двуполярного питания приемопередатчи

Назначение линий внешнего интерфейса RS-232
  Название № контакта DB9 № контакта DB25 Назначение TD

Управление потоками данных через интерфейс RS-232
Для управления потоком данных (Flow Control) могут использоваться два варианта протокола — аппаратный и программный. Аппаратный протокол управления потоком RTS/CTS (hardwa

Ресурсы и адресации
  PD, младший адрес Base – адрес адресное пространство COM – порта $3F8, $2F8, $3E8,

Управление скоростью передачи
V, Бод Н – код DN ... ... 115200/12 = 9600 00

Формат слова управления прерываниями
Бит Назначение «1» – разрешает прерывание по окончании приема; «0» – запрещает прерывание

Фрагмент передачи символов
TimeOut:=MemW[$40:$6C]; {двухбайтная переменная TimeOut хранит время старта программы} repeat status:=port[Base +5]; {xx?x’xxxx- 1– можно писать

Программа приема байта
TimeOut:=100; {соответствует ожиданию прихода символа τ=100*55*10-3=5,5с} TimeStsrt:=MemW[$40:$6C] repeat status:=port[Base +5]; {код состояния порта}

Интерфейс токовая петля
Интерфейс «токовая петля» для представления сигнала использует не напряжение, а ток в двухпроводной линии, соединяющей приемник и передатчик. Токовая петля обычно предполагает гальваническ

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

Сигналы магистрали ISA
SA0..SA19 Адресуемое пространство 16 МБ. Для внешних устройств используются 16 младших линий: JBB(адресов) 64К Селектор адреса настроен на SA0..SA9 – 1024 адреса

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

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги