русс | укр

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

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Абстракции в обработке информации

Компьютер представляет собой устройство для хранения и переработкиинформации. Информация же, как правило, описывает тот или иной реальный объект, существующий независимо от компьютера. Описание объекта называется абстракцией (Рис. 1.1).

Рис. 4.1. Компьютер работает с абстракциями реального мира.

Часто вместо более общего понятия информации приходится слышать такой термин, как данные.

Данные – это упрощенноепредставление реальных явлений.

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

Почему данные всегда упрощают описание реального объекта? Потому что учесть все свойства объекта не только невозможно, но и не нужно. Представьте себе, что вам нужно рассчитать силу, с которой Земля притягивает гирю массы m. Если не прибегать к упрощению, то нужно будет учесть и нерегулярность формы самой Земли, а также силы притяжения Солнца, планет, всех звезд во Вселенной – явно абсурдная задача. Поэтому нужно вовремя остановиться и выделить в огромном массиве информации те и только те данные, которые нам нужны.

Абстрагирование– удаление несущественной информации.

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

 
 


Рис. 4.2. Необходимая и избыточная информация.

Таким образом, уровень абстрагирования зависит от:

a. Решаемой задачи.

b. Возможностей аппаратного и программного обеспечения.

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

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

VAR a:REAL; b:INTEGER; c:STRING;

Переменнаяв программе – не что иное, как абстрактное представление свойства реального объекта.

Просмотров: 531


Вернуться в оглавление



Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.