Оперативная память

Содержание

Слайд 2

Оперативная память

Память компьютера лучше представить себе в виде последовательности ячеек.
Каждая ячейка -

Оперативная память Память компьютера лучше представить себе в виде последовательности ячеек. Каждая
один байт.
Байты (ячейки) памяти пронумерованы один за другим, начиная с 0.
Любая информация в памяти может занимать один или несколько байтов.

Слайд 3

Из чего состоит программа?

Программа состоит из данных и команд, которые работают с

Из чего состоит программа? Программа состоит из данных и команд, которые работают с этими данными.
этими данными.

Слайд 4

Как работает программа

При запуске программы, она с жесткого диска загружается на свободное место

Как работает программа При запуске программы, она с жесткого диска загружается на
в оперативную память. При этом программа:
получает входные данные с устройств ввода (клавиатура, мышка) и заносит их в оперативную память;
Обрабатывает введенные данные с помощью команд;
Результат обработки (выходные данные) из оперативной памяти выводит на устройства вывода (монитор, жесткий диск, принтер).

Слайд 5

Что размещается в оперативной памяти
В оперативной памяти размещаются:
входные данные (то, что дано)
выходные

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

Слайд 6

Что такое данные

Данные это – информация необходимая для работы команд, а также

Что такое данные Данные это – информация необходимая для работы команд, а
результат выполнения команды.
Пока мы будем рассматривать только числовые данные.
Числа могут быть:
Целыми и вещественными (с дробной частью).
Очень большими и очень маленькими.
Положительными и отрицательными.
Поэтому существуют различные типы данных.

Слайд 7

Что определяет тип данных?

Сколько байтов оперативной памяти мы будем отводить этому данному

Что определяет тип данных? Сколько байтов оперативной памяти мы будем отводить этому
(насколько большое или маленькое число)

Как нужно интерпретировать эти данные
Целое число (со знаком или без знака)
Или число вещественное (с дробной частью)
Или это символ

Слайд 8

Что такое команда

Команда – это операция, которую компьютер должен выполнить с данными.

Что такое команда Команда – это операция, которую компьютер должен выполнить с
Например, нужно вычислить сумму чисел 2 и 3. Что нужно, чтобы записать команду?

Код (условное обозначение, в данном случае +)

Входные данные (операнды, в данном случае числа 2 и 3)

Результат (тоже данное, в данном случае 5)

Слайд 9

Зачем данным нужны имена

Программа начинает выполнятся начиная с первой команды и выполняет

Зачем данным нужны имена Программа начинает выполнятся начиная с первой команды и
ПОДРЯД все команды.
Но команды работают с данными. Как же команде обратиться к этим данным?
Они расположены где-то в оперативной памяти, но мы не знаем по каким адресам.
Поэтому в команде вместо адресов, по которым расположены данные, указываются имена.

Слайд 10

Что такое имя (идентификатор)?

Ячейка в оперативной памяти, которая имеет имя называется переменной

Что такое имя (идентификатор)? Ячейка в оперативной памяти, которая имеет имя называется
или константой.

Указывая в программе имя, мы фактически указывает адрес в оперативной памяти.

Слайд 11

Что такое значение?

То число, которой находится в ячейке оперативной памяти, по этому

Что такое значение? То число, которой находится в ячейке оперативной памяти, по
адресу (под этим именем), называется значением переменной или константы.
Значение переменной можно менять, значение константы менять нельзя.

Слайд 12

Как написать программу

Для того, чтобы компьютер вас правильно понял, нужно написать программу.

Как написать программу Для того, чтобы компьютер вас правильно понял, нужно написать
Программа должна быть написана на каком-то языке программирования.
Поэтому нужно на этом языке грамотно записать последовательность команд, с помощью которых из входных данных получаются выходные.

Слайд 13

Виды языков программирования

Все языки программирования делятся на два вида — языки низкого

Виды языков программирования Все языки программирования делятся на два вида — языки
и высокого уровня.
Языки низкого уровня — программа записывается на языке, близком к машинному.
Такие языки жестко привязаны к определенному типу аппаратуры (у каждого типа процессора — свой машинный код). Пример?

Пример языка низкого уровня – ассемблер

Слайд 14

Виды языков программирования

Языки высокого уровня – это языки программирования, позволяющие записывать программу

Виды языков программирования Языки высокого уровня – это языки программирования, позволяющие записывать
в удобном для человека виде.
Такие языки не привязаны к типу процессора и значительно проще в использовании.
Таких языков много. Мы будем заниматься С++, С#, JavaScript, SQL

Слайд 15

Что из себя представляет программа

Физически программа на языке высокого уровня (С++) представляет

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

Слайд 16

Для чего нужен транслятор?

Чтобы компьютер мог понять программу, которая написана на языке

Для чего нужен транслятор? Чтобы компьютер мог понять программу, которая написана на
высокого уровня, нужно ее перекодировать — перевести на машинный язык.
Это выполняется специальными программами, которые называются трансляторами.

Слайд 17

Транслятор-компилятор, что это?

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

Транслятор-компилятор, что это? Трансляторы бывают двух видов: компиляторы и интерпретаторы. Компилятор читает
делает ее перевод и создает законченный вариант программы на машинном языке, который затем и выполняется.
Для выполнения законченного варианта программы в таких языках исходный текст программы не нужен.
Компиляторы у таких языков:  Pascal, C, C++

Слайд 18

Транслятор-интерпретатор, что это?

Интерпретатор переводит и выполняет программу строка за строкой.
В отличие от

Транслятор-интерпретатор, что это? Интерпретатор переводит и выполняет программу строка за строкой. В
компилятора, интерпретатор НЕ порождает на выходе программу на машинном языке. Распознав команду исходного языка, он тут же выполняет ее. 
Поэтому исходный текст программы нужен для ее выполнения.
Интерпретаторы: Java Script, Python

Слайд 19

Сборка, зачем нужна?

Компилятор создает не готовую к исполнению программу, а только

Сборка, зачем нужна? Компилятор создает не готовую к исполнению программу, а только
объектный код (файл с расширением *.obj).
Этот код содержит результат перевода на машинный язык текста программы, созданной программистом.
Но создаваемая программа может содержать обращения к функциям стандартных библиотек, реализации которых описаны в отдельных файлах.

Слайд 20

Сборка

Для объединения кода создаваемой программы и кода библиотечных функций используется специальная

Сборка Для объединения кода создаваемой программы и кода библиотечных функций используется специальная
программа.
В результате сборки получается исполнимый файл *.exe
Все эти действия выполняются в специальной среде программирования.

Слайд 21

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

Среда программирования объединяет в себе:
Текстовый редактор для написания текста программы.

Среда программирования Среда программирования объединяет в себе: Текстовый редактор для написания текста
(В результате получается текстовый файл *.cpp или другим расширением, в зависимости от языка)
Транслятор (В результате получается файл *.obj)
Компоновщик (В результате получается файл *.exe)

Слайд 22

Что такое проект

Проект это совокупность файлов и папок объединенных в единое целое

Что такое проект Проект это совокупность файлов и папок объединенных в единое
для решения определенной задачи.
Как правило, в проект входят:
Текстовый файл (*.срр), содержащий текст программы;
Файл *.obj, содержащий оттранслированную программу;
Файл *.exe, содержащий готовую к выполнению программу, с уже подключенными библиотечными функциями;
Могут быть другие файлы, содержащие различные настройки.

Слайд 23

Технологии программирования

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

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

Слайд 24

Процедурное программирование

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

Процедурное программирование Процедурные языки предназначены для однозначного описания алгоритмов. При решении задачи
языки требуют в той или иной форме явно записать процедуру ее решения.
Наиболее известные процедурные языки: PL/1, Pascal, C

Слайд 25

Логическое программирование

Логические языки ориентированы не на запись алгоритма решения задачи, а на

Логическое программирование Логические языки ориентированы не на запись алгоритма решения задачи, а
формализованное описание условия задачи.
В этих языках указывается что дано и что требуется получить. При этом поиск решения задачи возлагается непосредственно на ПК.  
Самым известным языком логического программирования является Prolog.