Реклама:

Типы данных можно разделить на две категории: числовые и нечисловые. Среди числовых типов данных главными являются целые числа. Они бывают различной длины: обычно 8, 16, 32 и 64 бита. Целые числа применяются для подсчета различных предметов (например, позволяют узнать, сколько на складе отверток), для идентификации различных объектов (например, банковских счетов), а также для других целей. В большинстве современных компьютеров целые числа хранятся в двоичном виде, хотя в прошлом использовались и другие системы. Двоичные числа обсуждаются в приложении А.

Некоторые компьютеры поддерживают целые числа и со знаком, и без знака. В целом числе без знака нет знакового бита, и все биты содержат данные. Этот тип данных имеет преимущество: у него есть дополнительный бит, поэтому 32-разрядное слово может содержать целое число без знака от 0 до 232-1 включительно. Двоичное целое число со знаком, напротив, может содержать числа только до 231-1, но зато включает и отрицательные числа.

Для выражения нецелых чисел (например, 3,5) используются числа с плавающей точкой. О них рассказывается в приложении Б. Их длина составляет 32, 64, а иногда и 128 бит. В большинстве компьютеров есть команды для выполнения операций с числами с плавающей точкой. Во многих компьютерах имеются отдельные регистры для целочисленных операндов и для операндов с плавающей точкой.

Некоторые языки программирования, в частности COBOL, допускают в качестве типа данных указывать десятичные числа. Машины, предназначенные для программ на языке COBOL, часто поддерживают десятичные числа аппаратно, обычно кодируя десятичный разряд четырьмя битами и затем объединяя два десятичных разряда в байт (двоично-десятичный формат). Однако результаты арифметических действий над такими десятичными числами будут некорректны, поэтому требуются специальные команды для коррекции десятичной арифметики. Эти команды должны контролировать перенос бита 3. Вот почему код условия часто содержит бит служебного переноса. Между прочим, проблема 2000 года возникла из-за программистов, пишущих на языке COBOL, которые решили, что дешевле представлять год в виде двух десятичных разрядов, а не в виде 16-разрядного двоичного числа.

Типы данных || Оглавление || Нечисловые типы данных