- •Системы счисления, используемые на компьютере. Десятичная система, двоичная и 16-ричная системы счисления. Правила перевода.
- •Арифметические операции в двоичной системе счисления. Понятие прямого, обратного и дополнительного кода. Сложение и вычитание целых чисел в двоичной системе счисления.
- •Арифметические операции в двоичной системе счисления. Представление вещественных чисел в компьютере. Сложение и вычитание вещественных чисел в двоичной системе счисления.
- •Основные логические операции: and, or, not, xor. Таблицы истинности для этих операций. Основные тождества булевой алгебры.
- •Понятие об информации и науке информатике. Исторические этапы способов обработки, хранения и передачи информации.
- •Функции компьютера. Их краткая характеристика.
- •Структура компьютера. Основные компоненты компьютера и их характеристика. Состав центрального процессора.
- •Язык блок-схем. Основные типы блоков. Понятие структуры. Виды структур.
- •17. Основные типы алгоритмов и способы их записи на языке блок-схем.
- •18. Архитектура эвм. Особенности фон Неймановской архитектуры.
- •Оперативная память компьютера. Понятие бита, байта, слова, двойного слова. Понятие адреса байта и слова.
- •Регистры центрального процессора. Краткая характеристика регистров общего назначения.
- •Регистры центрального процессора. Сегментные регистры и указатель команд. Регистр флагов.
- •Представление данных на компьютере. Представление целых чисел без знака и со знаком.
- •23 Представление данных на компьютере. Представление символьных данных и представление команд.
- •Понятие о языке Ассемблера. Этапы разработки программы на ассемблере.
- •Windows api функция для вывода символов на экран. Ее основные параметры и их назначение.
- •Windows api функция для ввода символов с консоли. Ее основные параметры и их назначение.
- •Особенности сложения и вычитания целых (в том числе и знаковых) чисел на Ассемблере.
- •29. Команды умножения и деления на Ассемблере.
- •30. Директивы определения данных.
- •33. Модификация адресов на ассемблере. Индексирование в одномерном массиве.
- •34. Модификация по нескольким регистрам на ассемблере. Обработка двумерных массивов.
- •Процедуры на Ассемблере. Правила оформления процедуры и обращения к ней.
- •36. Процедуры на Ассемблере. Передача параметров в процедуру. Рекурсивные процедуры.
- •Работа с файлами на Ассемблере. Открытие и закрытие файлов. Windows api процедуры открытия и закрытия файлов, их параметры.
- •38. Чтение из файла и запись в файл. Windows api процедуры записи и чтения файлов, их параметры.
- •39. Работа с вещественными числами на Ассемблере. Математический сопроцессор и его регистры. Форматы записи вещественных чисел.
- •40. Работа с вещественными числами на Ассемблере. Команды передачи данных и арифметические команды математического сопроцессора.
Оперативная память компьютера. Понятие бита, байта, слова, двойного слова. Понятие адреса байта и слова.
ОПЕРАТИВНАЯ ПАМЯТЬ — энергозависимая часть системы компьютерной памяти, в которой временно хранятся данные и команды, необходимые процессору для выполнения им операции. Обязательным условием является адресуемость (каждое машинное слово имеет индивидуальный адрес) памяти. Передача данных в оперативную память процессором производится непосредственно, либо через сверхбыструю память. Содержащиеся в оперативной памяти данные доступны только тогда, когда компьютер включен. При выключении компьютера содержимое стирается из оперативной памяти, поэтому перед выключением компьютера все данные нужно сохранить. Так же от объёма оперативной памяти зависит количество задач, которые одновременно может выполнять компьютер.
БИТ – минимальная единица информации. Один ит информации — это одна двоичная цифра: 0 или 1,само название bit – BInary digiT. Но бит очень маленькое кол-во информации, поэтому в компьютере используют более крупную единицу:
БАЙТ — единица хранения и обработки цифровой информации. В современных вычислительных системах байт считается равным восьми битам, в этом случае он может принимать одно из 256 различных значений.
1 байт = 1 символ. Один байт — элементарная ячейка памяти компьютера. Память компьютера состоит из последовательности таких ячеек. Каждая ячейка(байт) имеет свой адрес(номер ячейки) и содержимое — двоичный код,который хранится в ней. Когда процессор обрабатывает информацию, он находит по адресу в памяти нужную ячейку, читает из нее содержимое, выполняет необходимые действия и записывает результат в другую ячейку памяти.
СЛОВО — последовательность из двух байт (16 бита), расположенных по последовательным адресам. Адрес слова по определению считается адрес его первого байта, с меньшим адресом.
ДВОЙНОЕ СЛОВО - последовательность из четырех байт (32 бита), расположенных по последовательным адресам. Адрес двойного слова — адем первого из его байтов, с наименьшим адресом.
Регистры центрального процессора. Краткая характеристика регистров общего назначения.
Регистр — ячейки, расположенные в центральном процессоре и доступные из машинных команд.
Доступ к регистрам осуществляется намного быстрее, чем к ячейкам памяти, поэтому использование регистров заметно уменьшает время выполнения программ.
Все регистры имеют размер двойного слова (32 разряда), за каждым из них закреплено определенное имя (EAX, ESP и др.).
Регистрами общего назначения называются 32-битные регистры EAX, EBX, ECX, EDX, EBP, ESP, ESI и EDI.
Регистры общего назначения — это регистры данных.
AX AH AL SI
BX BH BL DI
CX CH CL BP
DX DH DL SP
AX – accumulator, аккумулятор
BX – base, база РЕГИСТРЫ
CX – counter, счетчик ДАННЫХ
DX – data, данные
буква X от слова eXtended- расширенный; в процессоре 8080 были байтовые регистры A,B,C,D, но затем из расширили до размера слова
ESI/SI - source index, индекс источника
EDI/DI - destination index, индекс приемника РЕГИСТРЫ
EBP/BP - base pointer, указатель базы УКАЗАТЕЛИ
ESP/SP - stack pointer, указатель стека
Особенностью всех этих регистров является то, что их можно использовать в любых арифметических, логических и т.п. машинных операциях. Например, можно сложить число из регистра edi с числом из регистра eax, или вычесть из содержимого ebp содержимое ecx.
В то же время каждый из регистров имеет определенную специализацию: некоторые команды требуют, чтобы их операнд или операнды находились в определенных регистрах. Например, команда деления требует, чтобы ее первый операнд (делимое) находился в регистре eax или в регистрах eax,edx (в зависимости от размера операнда), а команды управления циклом используют регистр ecx в качестве счетчика цикла.
Регистры AX, BX, CX, DX позволяют осуществлять доступ к их старшей и младшей половине: каждый из регистров состоит из двух байтовых регистров. Обозначают их буквами H (High – выше старший) и L (Low – ниже, младший) и первой буквой из названия регистра: AH и AL – в AX и т.д. В итоге, например, в AX можно записать слово (из 16 битов), а затем считать левую половину (байт из AH).