0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<ul><li><a>Тип данных - это…</a><ul><li><a>Какими бывают виды информации: глобальная классификация</a></li>
1
<ul><li><a>Тип данных - это…</a><ul><li><a>Какими бывают виды информации: глобальная классификация</a></li>
2
</ul></li>
2
</ul></li>
3
<li><a>Разновидности целых видов данных</a><ul><li><a>В C++</a></li>
3
<li><a>Разновидности целых видов данных</a><ul><li><a>В C++</a></li>
4
</ul></li>
4
</ul></li>
5
<li><a>Операции над int</a><ul><li><a>По битам</a></li>
5
<li><a>Операции над int</a><ul><li><a>По битам</a></li>
6
</ul></li>
6
</ul></li>
7
</ul><p>Высокоуровневые языки разработки могут работать с различными типами данных. В зависимости от соответствующего параметра система будет "понимать", какие операции и действия допускаются с переменной или значением.</p>
7
</ul><p>Высокоуровневые языки разработки могут работать с различными типами данных. В зависимости от соответствующего параметра система будет "понимать", какие операции и действия допускаются с переменной или значением.</p>
8
<p>Далее предстоит изучить типы данных в C++, C и Java. Особое внимание будет уделено целочисленному виду. Необходимо выяснять не только то, что обозначает соответствующий тип, но и его ограничения, обозначения и возможные свойства.</p>
8
<p>Далее предстоит изучить типы данных в C++, C и Java. Особое внимание будет уделено целочисленному виду. Необходимо выяснять не только то, что обозначает соответствующий тип, но и его ограничения, обозначения и возможные свойства.</p>
9
<h2>Тип данных - это…</h2>
9
<h2>Тип данных - это…</h2>
10
<p>Тип данных в программировании - это классификация множества значений и операций над ними. С их помощью разработчики смогут отлавливать ошибки, а также совершать разные действия над имеющимися объектами.</p>
10
<p>Тип данных в программировании - это классификация множества значений и операций над ними. С их помощью разработчики смогут отлавливать ошибки, а также совершать разные действия над имеющимися объектами.</p>
11
<p>Типы отвечают за определение двух вещей:</p>
11
<p>Типы отвечают за определение двух вещей:</p>
12
<ol><li>Диапазон (границы) допустимых значений. Пример - в Java поддерживаются две группы типов: целый и рациональный. Это связано с техническими особенностями работы устройств. В C++ их намного больше: дроби, символы, пустой тип, строки, целое число, числа с плавающей запятой двойной точностью.</li>
12
<ol><li>Диапазон (границы) допустимых значений. Пример - в Java поддерживаются две группы типов: целый и рациональный. Это связано с техническими особенностями работы устройств. В C++ их намного больше: дроби, символы, пустой тип, строки, целое число, числа с плавающей запятой двойной точностью.</li>
13
<li>Набор операций, которые можно выполнять. Пример - умножение применяется для вида "целое число". Аналогичную операцию с текстом производить не имеет никакого смысла. Умножать "родитель" на "машина" - это бессмыслица.</li>
13
<li>Набор операций, которые можно выполнять. Пример - умножение применяется для вида "целое число". Аналогичную операцию с текстом производить не имеет никакого смысла. Умножать "родитель" на "машина" - это бессмыслица.</li>
14
</ol><p>Языки программирования умеют распознавать различные виды информации. Это значит, что Java и другие ЯП не позволяют умножать строчку на строчку. А вот целое число на другое целое или дробное - запросто.</p>
14
</ol><p>Языки программирования умеют распознавать различные виды информации. Это значит, что Java и другие ЯП не позволяют умножать строчку на строчку. А вот целое число на другое целое или дробное - запросто.</p>
15
<h3>Какими бывают виды информации: глобальная классификация</h3>
15
<h3>Какими бывают виды информации: глобальная классификация</h3>
16
<p>Любой код подразумевает оперирование электронной информацией. Она обладает собственной природой и может быть по-разному организована. Этот момент напрямую влияет на удобство работы с ней.</p>
16
<p>Любой код подразумевает оперирование электронной информацией. Она обладает собственной природой и может быть по-разному организована. Этот момент напрямую влияет на удобство работы с ней.</p>
17
<p>Глобально поделить все типы информации в Java и других языках разработки можно на:</p>
17
<p>Глобально поделить все типы информации в Java и других языках разработки можно на:</p>
18
<ul><li>примитивные - те, что предопределены в языке;</li>
18
<ul><li>примитивные - те, что предопределены в языке;</li>
19
<li>ссылочные - они могут быть созданы разработчиком самостоятельно.</li>
19
<li>ссылочные - они могут быть созданы разработчиком самостоятельно.</li>
20
</ul><p>Целые числа относятся к примитивным data types. Далее они будут рассмотрены более подробно.</p>
20
</ul><p>Целые числа относятся к примитивным data types. Далее они будут рассмотрены более подробно.</p>
21
<h2>Разновидности целых видов данных</h2>
21
<h2>Разновидности целых видов данных</h2>
22
<p>Основным видом информации является целочисленный. Он обозначается как int (integer). Разрядность у него равна разрядности машинного слова процессора, на котором запущено приложение. Иногда необходимо пользоваться более "крупными" и "мелкими" разрядностями. Из-за этого возникла классификация целых.</p>
22
<p>Основным видом информации является целочисленный. Он обозначается как int (integer). Разрядность у него равна разрядности машинного слова процессора, на котором запущено приложение. Иногда необходимо пользоваться более "крупными" и "мелкими" разрядностями. Из-за этого возникла классификация целых.</p>
23
<p>Она включает в себя:</p>
23
<p>Она включает в себя:</p>
24
<ul><li>однобайтные целые - диапазон значений от -128 до +127 (8 бит);</li>
24
<ul><li>однобайтные целые - диапазон значений от -128 до +127 (8 бит);</li>
25
<li>короткие целые - диапазон от -32 768 до +32 767 (16 бит);</li>
25
<li>короткие целые - диапазон от -32 768 до +32 767 (16 бит);</li>
26
<li>длинные целые - границы определяются в диапазоне от -2 147 483 648 до 2 147 483 647 (32 бита);</li>
26
<li>длинные целые - границы определяются в диапазоне от -2 147 483 648 до 2 147 483 647 (32 бита);</li>
27
<li>двойные длинные - границы являются определенными в пределах -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 (64 бита).</li>
27
<li>двойные длинные - границы являются определенными в пределах -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 (64 бита).</li>
28
</ul><p>Для экономии памяти значения переменной integer может быть беззнаковым. Оно помечается как unsigned. Такие переменные позволяют увеличить maximum значение еще на единицу. Некоторые разработчики рекомендуют не пользоваться беззнаковыми целочисленными из-за отсутствия реализации в процессоре компьютера. Некоторые языки разработки не поддерживают работу с беззнаковыми типами. К числу таких можно отнести Java.</p>
28
</ul><p>Для экономии памяти значения переменной integer может быть беззнаковым. Оно помечается как unsigned. Такие переменные позволяют увеличить maximum значение еще на единицу. Некоторые разработчики рекомендуют не пользоваться беззнаковыми целочисленными из-за отсутствия реализации в процессоре компьютера. Некоторые языки разработки не поддерживают работу с беззнаковыми типами. К числу таких можно отнести Java.</p>
29
<h3>В C++</h3>
29
<h3>В C++</h3>
30
<p>Целое число является базовым типом. Он встречается почти в каждом приложении и обозначает целые, подобно математическим значениям. В C++ integers представлены:</p>
30
<p>Целое число является базовым типом. Он встречается почти в каждом приложении и обозначает целые, подобно математическим значениям. В C++ integers представлены:</p>
31
<ol><li>Signed char - один символ. Занимает в памяти 1 байт. Максимальное значение составляет 127, минимальное - -127.</li>
31
<ol><li>Signed char - один символ. Занимает в памяти 1 байт. Максимальное значение составляет 127, минимальное - -127.</li>
32
<li>Unsigned char. Хранит значения в диапазоне от 0 до 255.</li>
32
<li>Unsigned char. Хранит значения в диапазоне от 0 до 255.</li>
33
<li>Char. Обозначает один символ в ASCII. Занимает 8 бит памяти и способно хранить значение в пределах от -127 до 127 или от 0 до 255.</li>
33
<li>Char. Обозначает один символ в ASCII. Занимает 8 бит памяти и способно хранить значение в пределах от -127 до 127 или от 0 до 255.</li>
34
<li>Short. Это целое число, максимальное значение которого составляет 32 767, а минимальное - -32 768. Занимает 16 бит и может обозначаться как short int, signed short int или signed short.</li>
34
<li>Short. Это целое число, максимальное значение которого составляет 32 767, а минимальное - -32 768. Занимает 16 бит и может обозначаться как short int, signed short int или signed short.</li>
35
<li>Unsigned short - целочисленный тип со значениями от 0 до 65 535. Занимает 2 байта памяти.</li>
35
<li>Unsigned short - целочисленный тип со значениями от 0 до 65 535. Занимает 2 байта памяти.</li>
36
<li>Integer - тип данных, встречающийся чаще всего. Максимальное значение его составляет 2 147 483 647, а минимальное - -2 147 483 648 при 4 байтах. Если оно занимает 2 байта, то показатели варьируются от -32 768 до 32 767. Он всегда больше или равен типу short, а также меньше или равен типу long.</li>
36
<li>Integer - тип данных, встречающийся чаще всего. Максимальное значение его составляет 2 147 483 647, а минимальное - -2 147 483 648 при 4 байтах. Если оно занимает 2 байта, то показатели варьируются от -32 768 до 32 767. Он всегда больше или равен типу short, а также меньше или равен типу long.</li>
37
<li>Unsigned int - положительное целое число. Может занимать 16 или 32 бита.</li>
37
<li>Unsigned int - положительное целое число. Может занимать 16 или 32 бита.</li>
38
<li>Long type. Тип, который занимает 4 или 8 байта. Диапазон варьируется от -2 147 483 648 до 2 147 483 647 или от -9 223 372 036 854 775 808 до 9 223 327 036 854 775 807.</li>
38
<li>Long type. Тип, который занимает 4 или 8 байта. Диапазон варьируется от -2 147 483 648 до 2 147 483 647 или от -9 223 372 036 854 775 808 до 9 223 327 036 854 775 807.</li>
39
<li>Long long. Принимает значения от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807. Отнимает 64 бита или 8 байт.</li>
39
<li>Long long. Принимает значения от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807. Отнимает 64 бита или 8 байт.</li>
40
<li>Unsigned long long.</li>
40
<li>Unsigned long long.</li>
41
<li>Unsigned long - определяется в пределах от 0 до 4 294 967 295. В памяти занимает 32 бита.</li>
41
<li>Unsigned long - определяется в пределах от 0 до 4 294 967 295. В памяти занимает 32 бита.</li>
42
</ol><p>Тип integer в любом языке разработки позволяет выполнять различные операции над данными. Они будут отличаться в зависимости от определенного вида информации.</p>
42
</ol><p>Тип integer в любом языке разработки позволяет выполнять различные операции над данными. Они будут отличаться в зависимости от определенного вида информации.</p>
43
<p>Независимо от вида ints (будь то 2 31 или 1), значащих целочисленные данные, разработчик сможет выполнять с ними разные действия. К ним относят в первую очередь арифметические операции:</p>
43
<p>Независимо от вида ints (будь то 2 31 или 1), значащих целочисленные данные, разработчик сможет выполнять с ними разные действия. К ним относят в первую очередь арифметические операции:</p>
44
<ol><li>Сравнение. Здесь допускается применение соотношения "равно" (=, ==), "не равно" (!=, <>), "больше" (>), "меньше" (<), "меньше или равно" (<=), "больше или равное" (>=№.</li>
44
<ol><li>Сравнение. Здесь допускается применение соотношения "равно" (=, ==), "не равно" (!=, <>), "больше" (>), "меньше" (<), "меньше или равно" (<=), "больше или равное" (>=№.</li>
45
<li>Инкременты и декременты. Это арифметическое увеличение (++) или уменьшение (-) на единицу. Часто соответствующие операции выделены в отдельные манипуляции. Это связано с тем, что их используют счетчики.</li>
45
<li>Инкременты и декременты. Это арифметическое увеличение (++) или уменьшение (-) на единицу. Часто соответствующие операции выделены в отдельные манипуляции. Это связано с тем, что их используют счетчики.</li>
46
<li>Сложение и вычитание (+ и -).</li>
46
<li>Сложение и вычитание (+ и -).</li>
47
<li>Деление (/). Сюда же можно отнести получение остатка (%). Некоторые процессоры дают возможность проводить обе операции за одну инструкцию.</li>
47
<li>Деление (/). Сюда же можно отнести получение остатка (%). Некоторые процессоры дают возможность проводить обе операции за одну инструкцию.</li>
48
<li>Инверсия знака и получение абсолютного значения.</li>
48
<li>Инверсия знака и получение абсолютного значения.</li>
49
<li>Получение знака. Результатом часто выступает 1 для положительных значений числа, а также -1 для отрицательных. Нуль обозначается как 0.</li>
49
<li>Получение знака. Результатом часто выступает 1 для положительных значений числа, а также -1 для отрицательных. Нуль обозначается как 0.</li>
50
<li>Возведение в степень (^).</li>
50
<li>Возведение в степень (^).</li>
51
</ol><p>Если необходимо вычислить integral, рассматриваемый тип тоже пригодится. Для этого придется составить сложную функцию и произвести необходимые расчеты.</p>
51
</ol><p>Если необходимо вычислить integral, рассматриваемый тип тоже пригодится. Для этого придется составить сложную функцию и произвести необходимые расчеты.</p>
52
<h3>По битам</h3>
52
<h3>По битам</h3>
53
<p>В разработке целые числа поддерживают побитовые операции, независимо от количества переменных в коде. К ним относят:</p>
53
<p>В разработке целые числа поддерживают побитовые операции, независимо от количества переменных в коде. К ним относят:</p>
54
<ol><li>Битовый сдвиг вправо или влево.</li>
54
<ol><li>Битовый сдвиг вправо или влево.</li>
55
<li>Уточнение знака по старшему биту. Это относится только к целым числам со знаком.</li>
55
<li>Уточнение знака по старшему биту. Это относится только к целым числам со знаком.</li>
56
<li>Чтение и установку младшего бита. Используется для управления четностью.</li>
56
<li>Чтение и установку младшего бита. Используется для управления четностью.</li>
57
<li>Побитовое "и" и "или".</li>
57
<li>Побитовое "и" и "или".</li>
58
</ol><p>Базируются перечисленные операции на особенностях позиционного двоичного кодирования. Они обрабатываются быстрее, чем арифметические действия.</p>
58
</ol><p>Базируются перечисленные операции на особенностях позиционного двоичного кодирования. Они обрабатываются быстрее, чем арифметические действия.</p>
59
<p><a>Здесь</a>можно увидеть больше примеров переменных типа integer. Лучше изучить этот вопрос в любом языке разработки помогут дистанционные компьютерные курсы.</p>
59
<p><a>Здесь</a>можно увидеть больше примеров переменных типа integer. Лучше изучить этот вопрос в любом языке разработки помогут дистанционные компьютерные курсы.</p>
60
<p><em>Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в <a>Otus</a>!</em> </p>
60
<p><em>Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в <a>Otus</a>!</em> </p>
61
61