Uploaded by Софья Павлова

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

advertisement
1)История развития вычислительной техники.
Первое поколение — компьютеры на электронных лампах (1946 — 1956г.). За точку отсчета эры ЭВМ обычно
принимают 15 февраля 1946 года, когда ученые Пенсильванского университета США ввели в строй первый в мире
электронный компьютер ЭНИАК. В нем использовалось 18 тысяч электронных ламп. Машина занимала площадь 135
м3, весила 30 тонн и потребляла 150 кВт электроэнергии. Она использовалась для решения задач, связанных с
созданием атомной бомбы. И хотя механические и электромеханические машины появились значительно раньше, все
дальнейшие успехи ЭВМ связаны именно с электронными компьютерами. В СССР в 1952 году академиком С.А.
Лебедевым была создана самая быстродействующая в Европе ЭВМ БЭСМ. Быстродействие первых машин было
несколько тысяч операций в секунду.
Второе поколение — компьютеры на транзисторах (1956 — 1964 г.). Полупроводниковый прибор - транзистор был
изобретен в США в 1948 году Шокли и Бардиным. Компьютеры на транзисторах резко уменьшили габариты, массу,
потребляемую мощность, повысили быстродействие и надежность. Типичная отечественная машина (серий "Минск",
"Урал") содержала около 25 тысяч транзисторов. Лучшая наша ЭВМ БЭСМ-6 имела быстродействие 1 млн. оп/с.
Третье поколение — компьютеры на микросхемах с малой степенью интеграции (1964 — 1971г.). Микросхема была
изобретена в 1958 году Дж. Килби в США. Микросхемы позволили повысить быстродействие и надежность ЭВМ,
снизить габариты, массу и потребляемую мощность. Первая ЭВМ на микросхемах IBM-360 была выпущена в США в
1965 году, как и первая мини-ЭВМ PDP-8 размером с холодильник. В СССР большие ЭВМ третьего поколения серии ЕС
(ЕС-1022-ЕС-1060) выпускались вместе со странами СЭВ с 1972 года. Это были аналоги американских ЭВМ IBM-360,
IBM-370.
Четвертое поколение — компьютеры на микропроцессорах (1971 — настоящее время). Микропроцессор — это
арифметическое и логическое устройство, выполненное чаще всего в виде одной микросхемы с большой степенью
интеграции. Применение микропроцессоров привело к резкому снижению габаритов, массы и потребляемой
мощности ЭВМ, повысило их быстродействие и надежность. Первый микропроцессор Intel-4004 был выпущен в США
фирмой Intel в 1971 году. Его разрядность была 4 бита. В 1973г. был выпущен 8-битовый Intel-8008, а в 1974 г. Intel8080. В 1975 г. появился первый в мире персональный компьютер Альтаир-8800, построенный на базе Intel-8080.
Началась эра персональных ЭВМ.
Пятое поколение (перспективное) — это ЭВМ, использующие новые технологии и новую элементную базу,
например сверхбольшие интегральные схемы, оптические и магнито-оптические элементы, работающие посредством
обычного разговорного языка, оснащенные огромными базами данных. Предполагается также использовать
элементы искусственного интеллекта и распознавание зрительных и звуковых образов. Такие проекты
разрабатываются в ведущих промышленно развитых странах.
23)
34) Внешние последовательные интерфейсы.
Последовательный порт обменивается данными с процессором побайтно, а с внешними устройствами – побитно.
К последовательному порту обычно подсоединяют медленно действующие или достаточно удаленные устройства,
такие, как мышь и модем.
Com-порт, usb
СЧЕТЧИКИ НА ТРИГГЕРАХ
𝑸𝟑
𝑸𝟐
𝑸𝟏
𝑸𝟑+𝒏
𝑸𝟐+𝒏
𝑸𝟏+𝒏
𝑱𝟑
𝑲𝟑
𝑱𝟐
𝑲𝟐
𝑲𝟏
𝑱𝟏
0
0
0
0
1
0
0
X
1
X
0
X
0
1
0
1
0
0
1
X
X
1
0
X
1
0
0
1
1
0
X
0
1
X
0
X
1
1
0
0
0
1
X
1
X
1
1
X
0
0
1
0
0
0
0
X
0
X
X
1
Вариант 9. Микросхема ОЗУ имеет структуру 1 к*1 с входами CS#, MEMW#/MEMR. Микросхема ПЗУ имеет
структуру 16 к*8 с входом CS#. МПС должна содержать 1 кБ ОЗУ с ячейки D000 и 16 кБ ПЗУ с ячейки 7000 .
Подключите к МПС внешнее устройство по адресу 3D .
Порядок выполнения задания
1. Выбрать количество микросхем ОЗУ.
Для этого необходимо разделить требуемый объем памяти в битах на объем одной микросхемы ОЗУ в битах.
(1 кБ)/(1к*1бита)=8 бит / 1 бит = 8 микросхем
2. Определить количество субблоков ОЗУ (S).
Для этого разделить необходимое количество ячеек ОЗУ на количество ячеек в 1 микросхеме ОЗУ.
1024/1024=1 субблок
3. Определить количество микросхем ОЗУ в одном субблоке (M).
1 субблок содержащий 8 микросхем
4. Определить разрядность ША 1 микросхемы ОЗУ.
Для этого вычислить log2 от количества ячеек памяти ОЗУ.
Микросхема памяти имеет 1024 ячеек по 1 биту и требует 10-и разрядную шину адреса (так как 210=1024)
5. Определить количество разрядов ША для выборки микросхемы.
Для этого вычесть разрядность шины адреса ОЗУ из разрядности ША МП.
16-10=6, то есть для выбора конкретной ячейки памяти будут использоваться младшие разряды шины адреса (A9 –
A0). Для выбора микросхемы будут использоваться оставшиеся 6 разрядов шины адреса (A15 – A10)
6. Для каждой микросхемы ОЗУ определить код выборки микросхемы.
Для первой микросхемы код выборки микросхемы представляет собой старшие биты первого адреса ОЗУ (из
задания) в количестве равном коду выборки микросхемы. Для последующих микросхем необходимо прибавлять 1.
Для первого субблока разряды А15-A10 (назовем их кодом выборки субблока) равны 110100 (это старшие 6 бит
начального адреса блока памяти D000 = 1101000000000000), для второго — 110101, для третьего — 110110 и для
четвертого – 110111, для пятого — 111000, для шестого — 111001, для седьмого — 111010, для восьмого — 111011.
7. Для каждой микросхемы определить номера разрядов шины данных, связанные с микросхемой.
Для этого в каждом субблоке необходимо распределить биты ШД микропроцессора между всеми микросхемами
ОЗУ этого субблока произвольным образом.
Биты ШД
Субблок
110100
110101
110110
1
1
1
Микросхема
ОЗУ
1
2
3
110111
111000
111001
111010
111011
1
1
1
1
1
4
5
6
7
8
8. Определить адреса первого байта каждой микросхемы ОЗУ.
Для этого к коду выборки микросхемы в двоичном коде дописать нули в количестве равном разрядности ША
микросхемы ОЗУ.
Микросхема ОЗУ
1
2
3
4
5
6
7
8
Адрес первого байта
1101000000000000
1101010000000000
1101100000000000
1101110000000000
1110000000000000
1110010000000000
1110100000000000
1110110000000000
9. Заполнить таблицу, пример которой приведен в таблице 4.
Обозначе-ние
на схеме
DD1
DD2
DD3
DD4
DD5
DD6
DD7
DD8
Тип
микросхемы
ОЗУ
ОЗУ
ОЗУ
ОЗУ
ОЗУ
ОЗУ
ОЗУ
ОЗУ
Ем-кость
мик-росхемы
Адрес
пер-вой
ячей-ки
1Kх1
1Kх1
1Kх1
1Kх1
1Kх1
1Kх1
1Kх1
1Kх1
D000
D400
D800
DC00
E000
E400
E800
EC00
Кол-во
разрядов в
ША
10
10
10
10
10
10
10
10
Кол-во разрядов ША для
выборки
микро-схемы
6
6
6
6
6
6
6
6
Код выборки
микро-схемы
(в двоичной
системе)
110100
110101
110110
110111
111000
111001
111010
111011
Номера
разрядов ШД,
связанные с
микро-схемой
1-8
1-8
1-8
1-8
1-8
1-8
1-8
1-8
10. Выполнить пункты 1-9 для ПЗУ.
1. (16 кБ)/(16к*8бита)=128 бит / 128 бит = 1 микросхема
2. 16384/16384 = 1 субблок
3. 1 субблок содержащий 1 микросхему
4. Микросхема памяти имеет 16384 ячеек по 8 бит и требует 14-и разрядную шину адреса (так как 214=16384)
5. 16-14=2, то есть для выбора конкретной ячейки памяти будут использоваться младшие разряды шины адреса (A13
– A0). Для выбора микросхемы будут использоваться оставшиеся 2 разряда шины адреса (A15 – A14)
6. Для первой микросхемы разряды А15-A14 (назовем их кодом выборки микросхемы) равны 11 (это старшие 2 бита
начального адреса блока памяти 7000 = 1110000000000000)
7.
Биты ШД
Субблок
11
1
Микросхема
ПЗУ
1
8.
Микросхема ПЗУ
1
Адрес первого байта
1110000000000000
9.
Обозначе-ние
на схеме
Тип
микросхемы
Ем-кость
мик-росхемы
Адрес
пер-вой
ячей-ки
Кол-во
разрядов в
ША
Кол-во разрядов ША для
выборки
микро-схемы
Код выборки
микро-схемы
(в двоичной
системе)
Номера
разрядов ШД,
связанные с
микро-схемой
EE1
ПЗУ
16Kх8
7000
14
2
11
1-2
11. Нарисовать на схеме МП, все субблоки ОЗУ и ПЗУ, расположив микросхемы ОЗУ справа от МП рядами.
АССЕМБЛЕР
Найти количество чисел больших 10h. Массив байт
Код программы
mass dw 1,66,17,11
lea bx, mass
mov cx, 4
; установить счетчик повторений цикла
beg:cmp [bx], 10
;сравнить текущий элемент с 10
jl po
; он больше
po:
inc bx
; отметить, преступить к след элементу
inc bx
loop beg
; конец цикла beg
Пример2
Дан массив из десяти слов, содержащих целые двухбайтовые числа со знаком mass dw 10,24,76,479,-347,281,24,70,124,97. Требуется найти максимальное значение в массиве.
Текст программы:
lea bx, mass
; mass – адрес начала массива, например 0
mov cx, 10
; Установить счетчик повторений цикла
mov ax, [bx]
; Первый элемент массива в Аккумулятор
beg: cmp [bx], ax
; Сравнить текущий элемент массива с максимальным
jl no
; он меньше
mov ax, [bx]
; он больше или равен
no: inc bx
; Следующий элемент
inc bx
; массива
loop beg
mov max, ax ; max – адрес расположения найденного максимального числа, например 0x40.
int 20h
; конец программы
Пример 3
Дан массив из десяти знаковых чисел (слов или байт). Требуется:
1. Найти количество отрицательных чисел. Массив байт.
data segment
mas dw -10,20,12,40,-56,5,6,11,-3,-2 ;массив слов
result db 1 dup (?)
data ends ;конец сегмента
code segment ;СЕГМЕНТ КОДА
assume cs:code,ds:data ;ассоциируем регистры с сегментами
start: mov ax,data ;загружаем адрес сегмента данных
mov ds,ax ;загружаем адрес сегмента в сегментный регистр даннных
mov cx,10 ;загружаем счетчик слов
lea si, mas ;ообопе сумму чисел больших 10
xor bl,bl ;обнуляем счетчик чисел больших 10
m1:cmp word ptr [si],0 ;сравниваем слово из массива с 10
jns m2 ;если число не превышает 10, то переходим далее
inc bl ;инкрементируем счетчик чисел
m2: add si,2 ;переходим к следующему слову в массиве
loop m1
mov result,bl
int 21h
end start
Пример 4
Переставить числа в обратном порядке. Массив байт
.model small
.stack 100h
.data
array db 13,24,67,88,00,2,4,12,5
len equ $-array //
.code
start:
mov ax,@data
mov ds,ax
mov es,ax
mov cx,len
lea si,array //загрузка исполнительного адреса
mov di,si
mov bx,si
add bx,cx
shr cx,1 //логический сдвиг вправо
m1:
dec bx
lodsb // загрузка исполнительного адреса в регистр AL
mov dl,[bx]
xchg al,dl // двунаправленная пересылка данных
mov [bx],dl
stosb //сохранение значения в регистре AL
loop m1 // цикл
int 21h / прерывание
end start
Download