Binary file not shown.
|
After Width: | Height: | Size: 40 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 20 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 81 KiB |
@@ -8,13 +8,15 @@
|
|||||||
- Устранить элементы "магического мышления" и "карго культа".
|
- Устранить элементы "магического мышления" и "карго культа".
|
||||||
## Системная инженерия
|
## Системная инженерия
|
||||||
- [Понятие системы](Системная%20инженерия/Понятие%20системы.md)
|
- [Понятие системы](Системная%20инженерия/Понятие%20системы.md)
|
||||||
- [Компьютерные системы](Вычислительные%20системы/Компьютерные%20системы.md)
|
- [Компьютерные системы](Системная%20инженерия/Компьютерные%20системы.md)
|
||||||
- [Особенности производства аппаратуры](Системная%20инженерия/Особенности%20производства%20аппаратуры.md)
|
- [Особенности производства аппаратуры](Системная%20инженерия/Особенности%20производства%20аппаратуры.md)
|
||||||
- [Hardware and Software](Системная%20инженерия/Hardware%20and%20Software.md)
|
- [Hardware and Software](Системная%20инженерия/Hardware%20and%20Software.md)
|
||||||
## Схемотехника
|
## Схемотехника
|
||||||
- [Цифровая схемотехника](Цифровая%20схемотехника/Цифровая%20схемотехника.md)
|
- [Цифровая схемотехника](Цифровая%20схемотехника/Цифровая%20схемотехника.md)
|
||||||
## Теория вычислений
|
## Теория вычислений
|
||||||
- [Модель вычислений](Вычислительные%20системы/Модель%20вычислений.md)
|
- [Модель вычислений](Вычислительные%20системы/Модель%20вычислений.md)
|
||||||
|
- [Процессоры и системы команд](Вычислительные%20системы/Процессоры%20и%20системы%20команд.md)
|
||||||
|
- [Машина фон Неймана](Вычислительные%20системы/Машина%20фон%20Неймана.md)
|
||||||
## Вычислительные архитектуры
|
## Вычислительные архитектуры
|
||||||
- [Вычислительные архитектуры](Архитектуры/Вычислительные%20архитектуры.md)
|
- [Вычислительные архитектуры](Архитектуры/Вычислительные%20архитектуры.md)
|
||||||
## Инструменты low-level
|
## Инструменты low-level
|
||||||
|
|||||||
@@ -77,7 +77,7 @@
|
|||||||
|
|
||||||
Цвета - 3 партии входных данных. Цифры - на каком такте будут на данном этапе вычисления
|
Цвета - 3 партии входных данных. Цифры - на каком такте будут на данном этапе вычисления
|
||||||
### Практика
|
### Практика
|
||||||
На практике все перечисленные механизмы встречаются в современных [компьютерных системах](Компьютерные%20системы.md), в том числе:
|
На практике все перечисленные механизмы встречаются в современных [компьютерных системах](../Системная%20инженерия/Компьютерные%20системы.md), в том числе:
|
||||||
- В процессорах общего назначения
|
- В процессорах общего назначения
|
||||||
- В специализированных процессорах
|
- В специализированных процессорах
|
||||||
- В распределенных системах
|
- В распределенных системах
|
||||||
|
|||||||
@@ -0,0 +1,61 @@
|
|||||||
|
1. Развитие [Машины Тьюринга](Модель%20вычислений.md#Машина%20Тьюринга). Отличия:
|
||||||
|
- Лента заменена на Random-Access Memory (RAM)
|
||||||
|
- Инструкции и данные объединены
|
||||||
|
2. Призвана быть максимально простой в реализации и производстве
|
||||||
|
3. Процедурное программирование и ООП - тот же принцип
|
||||||
|
|
||||||
|

|
||||||
|
## Особенности
|
||||||
|
1. Использование двоичного кодирования
|
||||||
|
- Встречается и троичное, и двоично-десятичное кодирование
|
||||||
|
2. Программное управление. Команды выполняются последовательно
|
||||||
|
- Последовательность и порядок сегодня условны
|
||||||
|
3. Память компьютера однородно хранит данные и программы
|
||||||
|
- Однородность спорна
|
||||||
|
4. Ячейки памяти компьютера имеют адреса. Random-Access Memory
|
||||||
|
- Адрес не сводится к целому числу сегодня
|
||||||
|
- Память не является пассивным элементом компьютера
|
||||||
|
5. Возможность условного перехода
|
||||||
|
- И перехода по иным причинам
|
||||||
|
## Окружение
|
||||||
|
### (Микро)процессор
|
||||||
|
Цифровая схема, которая выполняет операции с внешним источником данных (обычно с памятью или потоком данных)
|
||||||
|
### (Микро)контроллер
|
||||||
|
Микросхема, предназначенная для управления электронными устройствами. Типичный микроконтроллер сочетает функции процессора и периферийных устройств, содержит ОЗУ и/или ПЗУ
|
||||||
|
### Оперативная память (память)
|
||||||
|
Обычно часть компьютерной памяти, в которой хранится выполняемый машинный код, а также входные, выходные и промежуточные данные
|
||||||
|
## Control Unit и DataPath
|
||||||
|
### Control Unit
|
||||||
|
Компонент центрального процессора (CPU), управляющей работой процессора. CU часто использует двоичный декодер для преобразования закодированных инструкций в управляющие сигналы, координирующие работу остальных блоков
|
||||||
|
### DataPath
|
||||||
|
АЛУ, набор регистров и внутренние шины CPU, по которым данные перемещаются между ними
|
||||||
|
|
||||||
|

|
||||||
|
## Виды инструкций
|
||||||
|
1. Работа с памятью: запись констант, копирование данных (память, регистры, порты I/O)
|
||||||
|
2. Арифметческие, логические и битовые операции
|
||||||
|
3. Управляющие операции: переходы, вызов и возврат из подпрограмм
|
||||||
|
4. Инструкции сопроцессоров: загрузка и выгрузка данных, управление сопроцессором
|
||||||
|
## Роль машинного слова
|
||||||
|
Единица данных, которая выбрана естественной для данной архитектуры процессора
|
||||||
|
1. Может быть адресована в памяти
|
||||||
|
2. Передается по шине между памятью и процессором за один раз
|
||||||
|
3. Является стандартной единицей обрабатываемой информации
|
||||||
|
4. Связанные вопросы: формат инструкции, форматы данных, форматы адресов
|
||||||
|
## На практике
|
||||||
|
1. В чистом виде практически не встречаются
|
||||||
|
2. Влияние на индустрию - трудно переоценить
|
||||||
|
3. Элементы архитектуры присутствуют в подавляющем большинстве процессоров и средств разработки
|
||||||
|
4. Структурное программирование, ООП - наследие фон Неймана
|
||||||
|
5. Ловушка обратной совместимости
|
||||||
|
## Вариации
|
||||||
|
1. Память команд и данных: Принстонская и Гарвардская архитектуры
|
||||||
|
- Типы данных, адресные пространства, машинные слова, теги
|
||||||
|
2. Принцип работы с данными в DataPath
|
||||||
|
- Accumulator, Register-to-Register, Register-to-Memory, Memory-to-Memory, Stack Architectures
|
||||||
|
3. "Мощность" системы команд: CISC, RISC
|
||||||
|
- Количество операндов (0, 1, 2, ...)
|
||||||
|
- Кодирование инструкций
|
||||||
|
- Принципы построения Control Unit
|
||||||
|
4. Адресация операндов
|
||||||
|
Кроме того: ввод-вывод, параллелизм, иерархия памяти и тп
|
||||||
@@ -7,7 +7,7 @@
|
|||||||
### ПЛК
|
### ПЛК
|
||||||
- Специальная разновидность электронной вычислительной машины
|
- Специальная разновидность электронной вычислительной машины
|
||||||
- Особенности
|
- Особенности
|
||||||
1. [Управляющие системы](Управляющие%20системы.md)
|
1. [Управляющие системы](../Системная%20инженерия/Управляющие%20системы.md)
|
||||||
2. Законченные устройства для встроенного использования
|
2. Законченные устройства для встроенного использования
|
||||||
3. Специализация ввода-вывода, модульность
|
3. Специализация ввода-вывода, модульность
|
||||||
4. Выделение инструментальной составляющей
|
4. Выделение инструментальной составляющей
|
||||||
|
|||||||
@@ -0,0 +1,64 @@
|
|||||||
|
## Инорфмационный процессор
|
||||||
|
- Система (электрическая, механическая или биологическая), которая принимает информацию (последовательность символов или состояний) в одной форме и обрабатывает (преобразует) ее в другую форму
|
||||||
|
- Например: исходный сигнал в статистику, посредством алгоритмического процесса
|
||||||
|
- Включает:
|
||||||
|
1. Ввод
|
||||||
|
2. Процессор
|
||||||
|
3. Хранилище
|
||||||
|
4. Вывод
|
||||||
|
## Универсальный процессор
|
||||||
|
Позволяет решать широкий круг задач, настройка которых производится после производства "по месту" или в run-time
|
||||||
|
### Примечания
|
||||||
|
1. Универсальность != полнота по Тьюрингу
|
||||||
|
2. Теоретическая универсальность != практическая универсальность
|
||||||
|
3. Универсальность противоречит эффективности
|
||||||
|
4. Современный процессор - совокупность программного и аппаратного обеспечения
|
||||||
|
### Свойства
|
||||||
|
1. [Hardware and Software](../Системная%20инженерия/Hardware%20and%20Software.md) (двухэтапное производство)
|
||||||
|
2. Полнота по Тьюрингу
|
||||||
|
3. Отсутствие "серьезных" ограничений на "объем" программы
|
||||||
|
4. Изменяемость ПО
|
||||||
|
## Виды процессоров
|
||||||
|
1. Application-Specific Integrated Circuit
|
||||||
|
2. Coarse-Grained Reconfigurable Arrays
|
||||||
|
3. Field-Programmable Gate Array
|
||||||
|
4. Digital Signal Processor
|
||||||
|
5. Graphics Processing Unit
|
||||||
|
6. Central Processing Unit
|
||||||
|
|
||||||
|

|
||||||
|
## Архитектура процессора
|
||||||
|
То, как видит компьютер программист. Определена набором команд (язык), местом нахождения операндов (регистры и память) и вычислительными механизмами (кеш, прерывания и тд)
|
||||||
|
1. Множество разных [архитектур](../Архитектуры/Вычислительные%20архитектуры.md)
|
||||||
|
2. Чтобы понять архитектуру, нужно знать ее язык
|
||||||
|
3. Слова в языке компьютера - "инструкции" или "команды"
|
||||||
|
4. Словарный запас - "система команд"
|
||||||
|
## Микроархитектура процессора
|
||||||
|
Соединение простейших цифровых элементов в логические блоки, предназначенные для выполнения команд определенной архитектуры
|
||||||
|
### Примечания
|
||||||
|
1. Описывает, как в процессоре расположены и соединены друг с другом регистры, АЛУ, конечные автоматы, блоки памяти, интерфейсы ввода-вывода и тп
|
||||||
|
2. У каждой архитектуры может быть много микроархитектур, обеспечивающих разное соотношение производительности, цены, сложности, технической эстетики. Они смогут выполнять одни и те же программы
|
||||||
|
3. Если ISA и микроархитектура отличаются на уровне MoC - обычно требуется уровень виртуализации (ПО, аппаратура, транслятор и тд)
|
||||||
|
## Система команд (ISA)
|
||||||
|
- Instruction Set Architecture
|
||||||
|
- Абстрактная модель процессора, формирующая интерфейс взаимодействия между программным обеспечением и процессором
|
||||||
|
- Производительность, энергопотребление и задержки часто не рассматриваются
|
||||||
|
### Что входит
|
||||||
|
1. Типы данных
|
||||||
|
2. Модель памяти, система и методы адресации
|
||||||
|
3. Набор инструкций
|
||||||
|
4. Механизмы обработки прерываний и исключений
|
||||||
|
5. Методы ввода и вывода
|
||||||
|
### Машинное слово
|
||||||
|
Фрагмент данных фиксированного размера, обрабатываемый как единое целое процессором
|
||||||
|
### Разнообразие систем команд
|
||||||
|
1. Действие над памятью/регистрами
|
||||||
|
- Произвольной сложности и длины (CISC)
|
||||||
|
- Фиксированного формата (RISC)
|
||||||
|
2. Действие без указания обрабатываемых данных (стековый)
|
||||||
|
3. Управляющие сигналы процессора под видом команды (NISC)
|
||||||
|
4. Группа команд под видом одной команды (VLIW)
|
||||||
|
5. Действие над шиной данных (TTA)
|
||||||
|
6. Команды без последовательного исполнения (редукционные)
|
||||||
|
7. Система команд из одной команды (URISC)
|
||||||
|
8. Управляющие сигналы процессоров под видом команды (NITTA)
|
||||||
@@ -57,4 +57,4 @@
|
|||||||
Множественность точек зрения на систему. Систему может разрушить проблема коммуникации при разработке
|
Множественность точек зрения на систему. Систему может разрушить проблема коммуникации при разработке
|
||||||
Формальный способ зафиксировать эти точки зрения и передать их другим - [архитектура](Понятие%20архитектуры.md)
|
Формальный способ зафиксировать эти точки зрения и передать их другим - [архитектура](Понятие%20архитектуры.md)
|
||||||
## Применение в Computer Science
|
## Применение в Computer Science
|
||||||
- [Компьютерные системы](../Вычислительные%20системы/Компьютерные%20системы.md)
|
- [Компьютерные системы](Компьютерные%20системы.md)
|
||||||
@@ -1,7 +1,5 @@
|
|||||||
В Java: статическая типизация, сильная, явная
|
В Java: статическая типизация, сильная, явная
|
||||||
Типы делятся на: [примитивные](Типы%20данных.md#Примитивные%20типы%20данных) и [ссылочные](Типы%20данных.md#Ссылочные%20типы%20данных)
|
Типы делятся на: примитивные и ссылочные
|
||||||
Типы делятся на: [](.md#Примитивные%20типы%20данных|примитивные) и [](.md#Ссылочные%20типы%20данных|ссылочные)
|
|
||||||
|
|
||||||
# Примитивные типы данных
|
# Примитивные типы данных
|
||||||
1. Целые - `byte`, `short`, `int`, `long`
|
1. Целые - `byte`, `short`, `int`, `long`
|
||||||
2. Символьный - `char`
|
2. Символьный - `char`
|
||||||
|
|||||||
Reference in New Issue
Block a user