Информатика и технология программирования

Ввод-вывод целых чисел


Функции и объекты стандартных потоков ввода /вывода могут, в частности, вводить и выводить целые числа, представленные в десятичной, восьмеричной и шестнадцатеричной системах счисления. При этом происходят некоторые преобразования, связанные с различной формой представления целого в памяти (внутренняя) и устройствах символьного ввода-вывода (внешняя форма представления).

Так, при выводе на экран или вводе с клавиатуры целое число представлено строкой символов в виде последовательности цифр числа (в нашем примере "1052"). В памяти это же число представлено целой переменной (машинным словом), которое хранит двоичный эквивалент десятичного числа 1052 (в шестнадцатеричной системе -0x041C). Преобразования при вводе и выводе целых чисел заключаются в переходе от символа-цифры к значению целой переменной, соответствующему этой цифре, и наоборот:


char c; int n;
n = c - '0';
c = n + '0';

int,long) или вещественной переменной.

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

ВНЕШНЯЯ ФОРМА ПРЕДСТАВЛЕНИ ЧИСЛА -- представление числа в виде строки символов цифр, соответствующих числу в заданной системе счисления.

Таким образом, о системе счисления имеет смысл говорить только во внешней форме представления числа.



Содержание раздела