726.00K
Категория: ПрограммированиеПрограммирование

Общие принципы построения и использования языков программирования. Компьютерная память. Работа с данными в языках программирования

1.

Лекция №2
по дисциплине:
«Языки программирования»
Раздел 1
«Общие принципы построения и использования языков
программирования»
Тема лекции
«Компьютерная память. Работа с данными в языках
программирования»
Лекция
составлена
старшим
преподавателем кафедры «ИСиЗИ», к.т.н.
Поляковым Д.В.
для студентов специальности 090303
«Информационная
безопасность
автоматизированных систем»
Тамбов, 2014
1

2.

???????
Центральный
процессор
Программа
Память
1

3.

Нативный язык программирования
Центральный
процессор
Программа
Память
Позиционно-независимый код (без ОС, в любом месте памяти)
Абсолютный код (без ОС, но привязан к памяти)
Машинный код (с операционной системой)
1

4.

???????
Исходный
текст
программы
???????
Центральный
процессор
Программа
Память
2

5.

Компилируемый язык программирования
Исходный
текст
программы
Компилятор
Примеры компилируемых
языков:
С, C++, Objective-C, Pascal
Центральный
процессор
Программа
Память
5

6.

???????
Центральный
процессор
Исходный
текст
программы
???????
Память
3

7.

Интерпретируемый язык программирования
Центральный
процессор
Исходный
текст
программы
Интерпретатор
Память
Примеры интерпретируемых
языков:
Python, PHP, Javascript, Perl
7

8.

???????
Компилятор
Байт-код
Исходный
текст
программы
Центральный
процессор
Интерпретатор
Байт-кода
Память
4

9.

Гибридный язык программирования
Компилятор
Байт-код
Исходный
текст
программы
Центральный
процессор
Примеры
гибридных
языков:
Java, C#
Интерпретатор
Байт-кода
Память
4

10.

Расположение программ
Компилятор
Исходный текст
программы
Байт-код
Интерпретатор
Байт-кода
Центральный
процессор
Память
Интерпретатор
Программа
5

11.

Цель и план лекции
Цель лекции
Цель лекции – сформировать представление об общих
принципах работы с памятью при разработке программного
обеспечения.
План лекции
Введение.
Понятие компьютерной памяти
Понятие виртуальной памяти.
Понятие типа данных.
Понятие переменной.
Основные операции над переменной.
Заключение.
6

12.

Положение о единицах измерения
Выдержка из «Положения о единицах величин, допускаемых к применению в
Российской Федерации» (утв. постановлением Правительства РФ от 31
октября 2009 г. № 879)

Внесистемные единицы величин применяются только в случаях, когда
количественные значения величин невозможно или нецелесообразно
выражать в единицах СИ

Наименование и обозначение единицы количества информации "байт" (1
байт = 8 бит) применяются с двоичными приставками "Кило", "Мега",
"Гига", которые соответствуют множителям: 1 Кбайт = 1024 байт, 1
Мбайт = 1024 Кбайт, 1 Гбайт = 1024 Мбайт. Данные приставки пишутся с
большой буквы. Допускается применение международного обозначения
единицы информации с приставками "K" "M" "G", рекомендованного
Международным
стандартом
Международной
электротехнической
комиссии МЭК 60027-2 (KB, MB, GB, Kbyte, Mbyte, Gbyte)
7

13.

Примеры названий единиц измерения
1 байт = 8 бит
1 килобайт = 1024 байт
1 мегабайт = 1024 килобайт
1 гигабайт = 1024 мегабайт
1 килобит = 1000 бит
1 мегабит = 1000 килобит
1 гигабит = 1000 мегабит
1 килогерц = 1000 герц
1 мегагерц = 1000 килогерц
1 гигагерц = 1000 мегагерц
1 килотонна = 1000 тонн
1мегатонна = 1000 килотонн
1 гигатонна = 1000 мегатонн
8

14.

???????
Центральный
процессор
fa07
ba60
011b
cbc9
ef00
ae43
af07
fa41
87aa
Память
9

15.

Адресуемость памяти
Центральный
процессор
fa07
ba60
011b
cbc9
ef00
ae43
af07
fa41
87aa
Память
9

16.

Виды компьютерной памяти
RAM E
Регистры CPU
Низкая
+
+
Кэш CPU
Низкая
+
+
DDR SDRAM
Низкая
+
+
Флэш
Средняя
+
-
ssd
Средняя
+
-
hdd
Средняя
+/-
-
высокая
низкая
малая
ёмкость
I
скорость
Вид памяти
большая
I – изнашиваемость – способность к перезаписи.
RAM – память произвольного доступа – вид компьютерной
памяти, позволяющий за одно и то же время обратиться к
любой ячейки памяти по её адресу.
E – зависимость работы памяти от источников питания.
10

17.

Виртуальная память
Виртуальная память
Регистры CPU
ДПА
Кэш CPU
ОЗУ
(DDR SDRAM)
swap
Внешняя
память
(hdd/ssd)
11

18.

Составные части переменной
Переменная
Этап разработки
• Имя переменной
• Тип
данных
переменной
Этап выполнения
• Тип
данных
переменной
• Адрес переменной
• Значение
переменной
12

19.

Основные операции над переменной
Состояние памяти
1
fa07
2
ba60
3
011b
4
cbc9
5
ef00
6
ae43
7
8
af07
fa41
9
87aa
Виртуальная память
Освобождение
памяти- - закрепление
процесс возврата
некоторого
Выделение памяти
набора
адресов
набора
адресов
виртуальной
в состояние
виртуальной
памяти
за некоторойпамяти
программой
на этапе
доступности
для выделения
её выполнения
13

20.

Заключение
Компьютерная память – важнейший объект, как для программиста, так и для
специалиста в области информационной безопасности.
Существует множество видов компьютерной памяти, и из-за несовершенства
каждого из них нам приходится работать с несколькими видами
одновременно.
Для удобства такой работы придумана концепция виртуальных адресов,
названная виртуальной памятью. Важнейшим свойством компьютерной
памяти – является адресуемость.
Минимальная адресуемая область памяти – это байт. Если объект, хранящийся
в памяти, занимает больше одного байта, то его адрес – это адрес его первого
байта, а размер и способ работы с ним задаётся его типом данных.
За типом данных должны следить программы, в противном случае возникают
ошибки и уязвимости.
Переменная служит для удобной работы с такими объектами в программе.
У переменной есть имя, адрес, значение и тип.
14

21.

Контрольные вопросы
1. Что такое байт?
2. Перечислите свойства компьютерной памяти.
3. Перечислите основные характеристики памяти
компьютера.
4. Почему в современных компьютерах используется
несколько видов памяти?
5. Что такое виртуальная память?
6. Что такое тип данных?
7. Что такое статическая и динамическая типизация?
8. Что такое переменная?
9. Что такое указатель?
10.Перечислите основные операции над переменной и
дайте им определения.
16
English     Русский Правила