Обязательная теория. Часть 2. Код и Данные.

Основные понятия программирования.

Конкретизируем основные понятия программирования.

Повторимся, мы с Вами поняли, что основная суть программирования — это эффективная работа с данными. Программирование — это совокупность двух не разрывных понятий — Кода и Данных. Основные понятия программирования пронизывают всю систему создания кода, касаются всех языков без исключения. Практическое понимание этих основ позволит Вам быстро освоить любой язык.

Данные.

Данные представлены в следующем виде:

  • переменные;
  • константы.

Данные могут быть сгруппированы для удобства их использования и обработки на:

  • структуры.

Разновидностями структур в современных языках программирования являются:

  • перечисления;
  • объединения;
  • записи с битовыми полями;
  • массивы;
  • классы (в отличие от структуры, класс группирует и код, и данные).

Разновидностью массива является (так сложилось исторически и до сих пор актуально):

  • нультерминированная строка.

Ключевым понятием, неотрывным от данных является:

  • указатели.

Код.

Код представлен в виде:

  • функции.

Функция представляет собой определённую последовательность (алгоритм) манипулирования:

  • данными;
  • процессами взаимодействия:
    -машина — человек;
    -машина — машина.

Функция может:

  • иметь вводимые и выводимые данные (ввод/вывод);
  • не иметь вводимых и выводимых значений.

Единство Кода и Данных.

Необходимо понимать, что код и данные фактически представляют собой последовательности цифр. Таким образом, код можно рассматривать также как совокупность данных. Ведь любая функция — это для компьютера набор единиц и нулей. Единство кода и данных является одним из ключевых понятий программирования.

Вот и всё! Больше нет ничего! Для искушённых читателей отметим, что объектно-ориентированное программирование, в любой его ипостаси вводит ещё одно ключевое понятие — класс (объект класса). Однако класс — есть не что иное как вид структуры, включающий в себя функции и данные. Класс представляет собой всего лишь более высокий уровень абстракции (обобщённого, цельного, неделимого понятия) и никак не влияет на основу выбранного нами деления программы на код и данные.

Единство кода и данных в современном программировании реализовано в понятии класса:

  • класс — отдельное понятие, но фактически — структура, содержащая как данные, так и код.

С понятием класса связано другое понятие — степень абстракции, то есть степень обобщения, группирования частей кода и данных в так называемые «объекты«. Ассемблер — язык низкого уровня, содержащий, однако, возможность работы с достаточно высокой степени абстракции на уровне процедурного языка программирования, такого, как Си (речь идёт о макросах). При изучении программирования на ассемблере в среде Windows с применением Win32 API, используя возможности MASM32 и FASM, вы увидите, что разницы между ассемблерным кодом и кодом на языке Си практически нет.

Работа с классами, как в объектно-ориентированных языках программирования, таких как С++, в ассемблере можно реализовать через структуры, но такой подход используется редко (иногда, при работе с DirectX, COM и т.п.).

Байт — единица кода и данных.

Единицей кода и данных является :

  • байт.

Не бит, а байт! Бит — это единица информации. Так удобнее для машины. Компьютер не может напрямую работать с битом данных — только с байтом (8 бит — 256 вариантов значений). Однако, манипулировать приходится с различными более удобными для человека понятиями — целые числа, числа с плавающей запятой, десятичные числа и т.п. Взаимосвязь указанных понятий рассмотрим ниже.

Приступаем к практике.

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

Программирование плотно связано с операционными системами. Начнём рассматривать программирование с написания программы под древнюю операционку MS-DOS. Углубляться в особенности не будем — всё достаточно коротко и ясно. Не пропускайте статей о создании кода в DOS, с них мы начнём рассматривать практические основы кодирования приложений для современных операционных систем Windows.

Добавить комментарий