Соглашение | Публикация статей
Красивые рольшторы - roll-service.by / Ремонт в Минске tvoi-master.by

Типизация
Категория: Статьи

Второе различие между языками ассемблера и языками программирования системного уровня состоит в типизации. Я использую этот термин для обозначения того, до какой степени значение информации бывает определено еще прежде, чем приходит время ее использования в программе. В сильно типизированных языках требуется, чтобы программист заранее декларировал способ использования каждого фрагмента информации, и затем уже языковые средства препятствуют применению ее каким-либо иным способом. В слабо же типизированных языках на способ обработки информации не налагается предварительных ограничении; интерпретация каждого элемента данных определяется только тем, как он фактически используется, без учета каких-либо предварительных объявлении.
Современные компьютеры устроены таким образом, что им не известно понятие типа. Каждое слово памяти может содержать значение любого типа; целое число, число с плавающей запятой, указатель или машинную команду. Интерпретация значения определяется способом его использования. Если указатель следующей машинной команды указывает в процессе исполнения машинной команды на некоторое слово в памяти, то оно и рассматривается как команда; если адрес слова задан в параметрах команды целочисленного сложения, то его значение и обрабатывается как целое число; и т. д. Одно и то же слово памяти может использоваться в различных случаях разными способами.
В противоположность этому для современных языков программирования характерна строгая типизация. Каждая переменная в языке программирования системного уровня должна быть объявлена с указанием конкретного типа, такого как целое число или указатель на строку символов, и затем использоваться только соответствующими этому типу способами.
Данные и программный код разделены; создание нового кода по ходу исполнения программы затруднено, если вообще возможно. Переменные могут объединяться в структуры или объекты с четко определенной субструктурой и методами манипулирования своими компонентами. Объект одного типа не может быть использован в ситуации, где предписано применение объект другого типа.
Языки описания сценариев создавались для связывания готовых программ. Их применение подразумевает наличие достаточного ассортимента мощных компонентов, которые требуется только объединить друг с другом.
Типизация дает ряд преимуществ. Во-первых, крупные программы становятся благодаря ей более управляемыми. Четкость системы типов делает для программиста ясным, для чего предназначены те или иные данные; он легко может различать их между собой и соответственно использовать. Во-вторых, компиляторы используют информацию о типах для обнаружения некоторых видов ошибок, таких как попытка, использовать число с плавающей запятой в качестве указателя. В-третьих, типизация повышает производительность приложения, позволяя компиляторам генерировать более специализированный код. Например, если компилятору известно, что некоторая переменная всегда содержит целочисленные значения, он может генерировать для манипулирования ею целочисленные инструкции; если же тип переменой компилятору неизвестен, то приходиться вставлять дополнительные инструкции для проверки типа во время исполнения.

Статьи по теме:

ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ - ВОПРОС О ВОЗМОЖНОСТИ ЕГО СОЗДАНИЯ
Oболочка Gopher
Конверт
Ада Августа Байрон
Преимущества .Net Для Разработки Программ И Баз Данных
Метод простой итерации
Загрузка в альтернативном режиме
Требования к антивирусным программам
Интерфейсы и мобильность Windows Vista
Как сделать правильный выбор? 1С:Предприятие 7.7. или 8.0
Общая структура СКС
Положение за компьютером
Выполнение команд меню с использованием сочетаний клавиш (горячие клавиши)
WordPad: Отмена и повтор последнего действия
Проверка состояния очереди печати
Создание, использование и распространение вредоносных программ для ЭВМ
Модуль F_Anti
Програмное обеспечение для предприятий - добавлять эффективность к делу
Потеря информации – можно ли ее избежать?
Компьютерный вирус - понятие и классификация
Отечественное законодательство в области "компьютерного права"
Crm Система, Внедрение Crm Систем
Системный блок
Internet и первичные телекоммуникационные сети Украины
Излучение
Ада и Java
Задача, решаемая с помощью использования пакета электронных таблиц
Тестирование От А До Я. Часть 1 - Основополагающие Принципы И Подходы
Жадный шкаф создателей Spyware в тесте!!
СРАВНЕНИЕ ИСКУССТВЕННОГО И ЕСТЕСТВЕННОГО ИНТЕЛЛЕКТОВ
Программа 1С Управление Торговлей 8
«ВАКЦИНАЦИЯ» ПРОГРАММ
КОМПЬЮТЕРНЫЕ ПРЕСТУПЛЕНИЯ
История Браузера Opera
Программа электронной записной книжки
Повышаем Права Пользователя
Как работает вирус
Устройства вывода
Шифрование. PGP-ключ
Глобальный уровень
Рисование прямой линии
ТИПЫ ЛКС
Периферійні пристрої
Описание переменных
Загрузочная запись
Возможности Windows XP
Мошенничество С Телефонами
Блокнот: Ведение журнала работы
Требования, предъявляемые к техническим средствам ЭВМ
Логическое хранение и кодирование информации
Обзор Ca Recovery Management R12. Новая Версия Продукта
Програмне забезпечення комп'ютерних мереж
World Wide Web в России
Определение структурированной кабельной системы
Копирование данных с компакт-диска