Что такое byte в паскале

от admin

2.2. Байтовый тип /Byte/

Байтовый тип Byte является своеобразным подмножеством типа Integer и охватывает целые числа в диапазоне от 0 до 255.

Данные, имеющие байтовый тип, можно сравнивать с данными целочисленного типа. Каждый раз, когда вы ожидаете получить величину типа Byte, вместо нее можно специфицировать значение целочисленного типа /Integer/ и наоборот. Исключение составляют только те случаи, когда величина определяется в качестве параметров. Кроме того, в арифметических выражениях допускается смешение данных типов Byter и Integers, а переменным байтового типа можно присваивать значение целочисленного типа. Переменная типа Byte занимает в памяти 1 байт.

2.3. Вещественный тип /Real/

Диапазон значений переменных вещественного типа охватывает числа от 1Е-38 до 1Е+38 с мантиссой, которая может содержать до 11 значащих цифр. Для размещения в памяти одной переменой вещественного типа требуется 6 байт.

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

Хотя данный тип /Real/ определяется здесь как стандартный, следует отметить некоторые различия, которые существуют между типом Real и другими скалярными типами:

1. Данные вещественного типа нельзя использовать для индексирования

2. Вещественный тип нельзя определять как базовый тип множества.

3. Данные вещественного типа нельзя использовать в управляющих операто-

4. Вещественный тип данных не допускает определения ограниченных типов.

2.4. Булевский тип /Boolean/

Данные булевского типа / иногда его называют логическим/ могут принимать значение, определяемое стандартными идентификаторами True /истина/ и False /ложь/. Переменная булевского типа занимает в памяти 1 байт.

2.5. Символьный тип /Char/

Значением переменной символьного /иногда его называют литеральным/ типа может быть один из символов, входящих в ASCII /Американский стандартный код обмена информации/. Символы упорядочены друг относительно друга в соответствии с их значениями в коде ASCII, например: «А»<«В». Значение кодов символов в ASCII изменяются от 0 до 255. Переменная символьного типа /Char/ занимает один байт памяти.

3. СРУКТУРА ПРОГРАММЫ

3.1. Заголовок программы

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

3.2. Раздел описания

В разделе описания, входящего в блок программы, описываются все идентификаторы, которые будут использоваться в разделе операторов данного блока программы /и, возможно, других блоков, находящихся внутри него/. Раздел описания, в свою очередь, состоит из пяти различных разделов:

1. Раздел описания меток

2. Раздел определения констант

3. Раздел определения типов

4. Раздел описания переменных

5. Раздел описания процедур и функций

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

Byte/ru

Тип byte (байт) является беззнаковым integer (целым) типом, представляющим значения в диапазоне 0 .. 255 и занимающим 8 бит. Типы byte и char являются одним и тем же в FPC версии 3.

Contents

Корректные значения

Ключевое отличие состоит в том, что byte может использоваться только в качестве числового type (типа), тогда как char может использоваться как символ или как часть строкового типа и не может использоваться в арифметическом выражении. byte всегда будет иметь тот же размер, что и ansiChar , но в будущем char может считаться синонимом wideChar , а не ansiChar .

Использование типов данных byte или byte обеспечивает лучшую документированность при работе с конкретными переменными.

Стандартные функции

Преобразование в символ и из него

Тип byte может быть приведен к типу char с помощью функции chr . Значения типа chr могут быть приведены к типу byte с помощью функции ord .

Исправленный вариант приведенной выше программы:

Строковое представление

Функцию binStr function из модуля system можно использовать для получения string (строки), показывающей двоичное представление byte :

Более универсальной функцией является intToBin , предоставляемая модулем strUtils .

Типы данных Pascal

Pascal – язык со строгой типизацией переменных. Это значит, что мы обязательно должны указывать тип каждой переменной, и не можем присвоить переменной одного типа значение другого типа (если только они не эквивалентны).

В качестве примера возьмем часть программы, которая вычисляет площадь круга по заданному радиусу:

Если мы укажем, что у переменной S целочисленный тип, программа будет работать не верно, так как результатом выражения r*r*3.14 будет дробь, и присвоить целочисленной переменной дробное значение мы не можем.

Еще один пример. Программа складывает значение двух переменных:

Если мы укажем, что a, b и c являются числами, то вполне логично предположить, что после выполнения программы значение c станет равно 9-ти. Но что будет, если a и b являются не числами, а простыми символами, а c – строкой?

В этом случае мы не можем сложить математически два значения (ну правда, мы же не можем математически сложить две буквы), и символы просто подставятся друг к другу, то есть значение c будет равно ‘54’.

Кроме этого, после запуска программы для каждой переменной в оперативной памяти выделяется некоторое количество байт, которое зависит от типа этой переменной. И значения, которые может принять переменная, ограничены этим количеством байт. К примеру, переменной с типом данных byte выделяется 1 байт памяти, и она может принимать значения от 0 до 255, всего 256, что является количеством вариантов, которые можно закодировать одним байтом. Если же мы укажем для переменной тип byte, но присвоим ей значение, к примеру, 1000, программа работать не будет.

Целочисленные типы

Переменная целочисленного типа может принимать любое целое значение из диапазона значений этого типа. Также является порядковым типом.

Тип Длина (байт) Диапазон
byte 1 0..255
shortint 1 -128..127
integer 2 -32768..32767
word 2 0..65536
longint 4 -2147483648..2147483647

В заданиях ЕГЭ, как правило, достаточно использовать тип данных integer.

Вещественные типы

К вещественному типу относят дробные числа и числа с плавающей запятой. Тем не менее, мы можем присвоить вещественному типу целое значение.

Тип Длина (байт) Диапазон
single 4 1.5*10 -45 — 3.4*10 38
real 6 2.9*10 -39 — 1.7*10 38
double 8 5*10 -324 — 1.7*10 308
extended 10 3.4*10 -4932 — 1.1*10 4932

В заданиях ЕГЭ, как правило, достаточно использовать тип данных real.

Символьный тип

Любой одиночный символ.

Тип Длина (байт) Диапазон
char 1 Любой символ кодировки ASCII

Переменной типа char можно присвоить любую букву, цифру, или любой другой символ стандартной кодировки. Также является порядковым типом.

Строковый тип

Если char — это только один символ, то строка — это набор символов. Строкой может быть, к примеру, слово, состоящее из нескольких букв. Также строки относят к структурным типам.

Тип Длина (байт) Диапазон
string 256 255 символов кодировки ASCII

Логический тип

Переменная логического типа может принимать только два значения: true или false (истина или ложь). Является порядковым типом.

Тип Длина (байт) Диапазон
boolean 1 true, false

Интервальный тип данных

Интервальный тип указывает, что переменная может принимать значения от одного значения, до другого. К примеру, мы знаем, что переменная может принимать значения только от 5 до 25. Мы можем объявить её тип так:

Читать:
Gtx 1070 какой процессор нужен

Простые типы данных — Pascal(Паскаль)

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

Простые типы делятся на стандартные (порядковые) и перечисляемые (ограниченные).

Стандартные типы

Язык Pascal имеет четыре встроенных стандартных типа:

  • integer (целочисленный)
  • real (вещественный)
  • boolean (логический)
  • char (символьный)

1.Целочисленный тип (integer).

В Pascal имеются следующие целочисленные типы:

  • shortint (короткое целое)
  • integer (целое)
  • longint (длинное целое)
  • byte (число длиной в байт)
  • word (число длиной в слово)

Каждый тип обозначает определенное подмножество целых чисел, как это показано в следующей таблице.

Тип данных Диапазон Количество байт
shortint -128 ..+127 1
integer -32768 .. 32767 2
longint -2147483648 +2147483647 4
byte 0 .. 255 1
word 0 .. 65535 4

Встроенные целочисленные типы

Описываются переменные целого типа следующим образом:

Арифметические действия над операндами целочисленного типа осуществляются в соответствии со следующими правилами:

  1. Тип целой константы представляет собой встроенный целочисленный тип с наименьшим диапазоном, включающим значение этой целой константы.
  2. В случае бинарной операции (операции, использующей два операнда), оба операнда преобразуются к их общему типу перед тем, как над ними совершается действие. Общим типом является встроенный целочисленный тип с наименьшим диапазоном, включающим все возможные значения обоих типов. Например, общим типом для целого и целого длиной в байт является целое, а общим типом для целого и целого длиной в слово является длинное целое. Действие выполняется в соответствии с точностью общего типа и типом результата является общий тип.
  3. Выражение справа в операторе присваивания вычисляется независимо от размера переменной слева.

В Pascal есть операции целочисленного деления и нахождения остатка от деления. При выполнении целочисленного деления (операция div) остаток от деления отбрасывается.

С помощью операции mod можно найти остаток от деления одного целого числа на другое.

результат: переменная c равна 1, а d равна 40.

При записи алгебраических выражений используют арифметические операции (сложение, умножение, вычитание, деление), функции Pascal, круглые скобки.

Порядок действий при вычислении значения выражения:

  1. вычисляются значения в скобках;
  2. вычисляются значения функций;
  3. выполняется унарные операции (унарный минус — смена знака);
  4. выполняются операции умножения и деления (в том числе целочисленного деления и нахождения остатка от деления);
  5. выполняются операции сложения и вычитания.

Встроенные математические функции языка Pascal

Математическая запись Запись на Pascal Назначение
cos x cos(x) Косинус x радиан
sin x sin(x) Синус x радиан
e x exp(x) Значение e в степени x
[x] trunc(x) Целая часть числа x
|x| abs(x) Модуль числа x
x 2 sqr(x) Квадрат числа x
sqrt(x) Квадратный корень из x
<x> frac(x) Дробная часть x
arctg x arctan(x) Арктангенс числа x
ln x ln(x) Натуральный логарифм x
p Pi Число p

Возведение в степень (кроме возведения в квадрат и возведения в степень числа e) отсутствует. Для возведения в произвольную степень можно воспользоваться очевидным равенством: x y =e y ln x . Для возведения числа в натуральную степень можно написать собственную функцию. Например,

Другой способ получить натуральное значение z=x y , где x, y — натуральные, это сделать так: Z := Round(Exp(Y * Ln(X))).

Примечание. Интересной является задача получения степени любого целого числа (за исключением нуля), если основание степени — неотрицательное целое, без использования развилки. Одно из возможных решений :

Здесь Ord(K) — функция, возвращающая порядковый номер величины K в том или ином порядковом типе (в примере использовано свойство, что порядковый номер False равен 0, а порядковый номер True — 1).

2. Вещественный тип (real).

К вещественному типу относится подмножество вещественных чисел, которые могут быть представлены в формате с плавающей запятой с фиксированным числом цифр. Запись значения в формате с плавающей запятой обычно включает три значения — m, b и e — таким образом, что m*b е , где b всегда равен 10, а m и e являются целочисленными значениями в диапазоне вещественного типа. Эти значения m и e далее определяют диапазон и точность вещественного типа.

Имеется следующие виды вещественных типов: real, singlе, double, extended,comp. Вещественные типы различаются диапазоном и точностью связанных с ними значений. Тип comp может содержать только целые числа от -2 63 +1 до +2 63 -1, но эти числа хранятся в вещественном формате, поэтому тип comp считается вещественным. С данными типа Comp можно обращаться так же, как с данными других вещественных типов, но дробная часть числа при этом автоматически отбрасывается.

Диапазон и десятичные цифры для вещественных типов

Тип Диапазон Точность Количество байт
Real 2.9×10Е-39 до 1.7×10Е 38 11-12 6
Single 1.5×10Е-45 до 3.4×10Е 38 7-8 4
Double 5.0×10Е-324 до 1.7×10Е 308 15-16 8
Extended 3.4×10Е-4932 до 1.1×10Е 4932 19-20 10
Comp -9.2E-18 до 9.2E18 19-20 8

Операции совершаемые над вещественными числами:

  1. Все операции допустимые для целых чисел.
  2. SQRT(x)-корень квадратный из числа х.
  3. Тригонометрические функции:
    • SIN(X);
    • COS(X);
    • ARCTAN(X).
  4. LN(X)-натуральный логарифм.
  5. EXP(X)-экспонента Х (е х ).
  6. EXP(X*LN(A))-возведение в степень (А х ).
  7. Функции преобразования типов:
    • TRUNC(X)-отбрасывает дробную часть
    • ROUND(X)-округление.

Некоторые правила арифметических операций:

  1. Если в арифметическом действии встречаются числа типа real и integer, то результат будет иметь тип real.
  2. Все составные части выражения записываются в одну строку.
  3. Используются только круглые скобки.
  4. Нельзя подряд ставить два арифметических знака.

Описываются переменные вещественного типа следующим образом:

Например:

3. Символьный тип(char)

K типу char относится любой символ заключенный в апострофы. Для представления апострофа как символьную переменную, надо заключить его в апостроф:».

Каждый символ имеет свой код и номер. Порядковые номера цифр 0,1..9 упорядочены по возрастанию. Порядковые номера букв также упорядочены по возрастанию, но не обязательно следуют друг за другом.

К символьным данным применимы знаки сравнения:

Функции, которые применимы к символьным переменным:

  1. ord(x) — определяет порядковый номер символа x.
  1. chr(x) — определяет символ по номеру.
  1. pred(x) — выдает символ, стоящий перед символом x.
  1. succ(x) — выдает символ, следующий после символа x.
Перечислимые типы

4. Перечислимый тип.

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

где <список констант> — это особый вид констант, задаваемых через запятую и имеющих свой порядковый номер, начиная с 0.

Можно выполнить такие операторы присваивания:

но нельзя выполнять смешанные присваивания:

К переменным перечислимого типа применимы следующие функции:

1. ord — порядковый номер

2. pred — предшествующий элемент

3. succ — последующий элемент.

Переменные перечислимого типа можно сравнить, так как они упорядочены и пронумерованы. Так выражения:

север < юг, июнь < январь имеют значения TRUE, а юг>запад и бак<бочка значение FАLSE.

5. Ограниченный тип.

Если переменная принимает не все значения своего типа, а только в некотором диапазоне, то ее можно рассматривать как переменную ограниченного типа. Каждый ограниченный тип задается путем накладывания ограничения на базовые типы.

Похожие статьи