Простите типове данни

Всички тези видове, с изключение на реални, са редни видове.

Редни видове са разделени на стандартни и нестандартни (изброени, интервал).

Редни видове се характеризират със следните свойства:

Наборът от допустимите стойности на всеки тип последователност е подредена последователност, всеки елемент от които има сериен номер. номер на последователност е цяло число. Първата стойност от всякакъв вид, за има номер на последователност 0, следващата стойност е сериен номер 1 и т.н. Изключение е вид, за число на. Пореден номер стойност на този вид е самата стойност.
  • За всяка стойност на серийния тип може да се прилага стандартната функция Ord. Връща броя на ценности.
  • За всяка стойност на серийния тип може да се прилага стандартната функция Pred. връща стойност, предхождаща тази стойност. Изключение е първата стойност.
  • За всяка стойност на серийния тип може да се прилага стандартната функция Succ. Връща стойността, която следва е посочено. Изключение е най-новата стойност.

  • Терминът цяло (или интегрална) се използва в традиционния смисъл на думата.

    Стойността на число са елементите на подмножество на целите числа, чиито граници зависят от изпълнението на езика. Константи с имена, съхранени MAXINT и MAXLongINT най-голямата стойност на цяло число на съответния тип Integer и Longint.

    Тъй като целите числа в програмите най-често се използват като различни видове контра стойности (например брой повторения на цикъла), както и стойностите на индекса, а след това на ограничен набор от валидни цели числа обикновено не води до затруднения по време на програмирането. Смята се, че целите числа (в контраст с реални числа) в компютърна система трябва да предоставят точни (т.е. в записването на цяло число може да бъде десетична запетая) и всички определени операции по тях трябва да се извърши точно.

    Паскал цяло число, кратно Типовете данни са определени, които се различават по дължина и наличието на етикет: маловажният бит или знакът се възприема като един конвенционален брой разряд.

    остатъка от деление число

    За целия стойности може да се използва релационни оператори. В резултат на тези операции е логическа тип.

    Например. сравняване резултат 3 <8 будет значение true.

    В допълнение, цели числа могат да се прилагат побитови операции и. или. XOR и не. При изпълнението на тези операции, всяка стойност представени като съвкупност от бита. Действието се извършва на всяка двойка, съответстваща бита на операнди: първа категория на първата, втората - на втория, и др ...

    Например. резултатът от етап 3 и 2 ще бъде 2.

    За да работите с целочислени стойности също са работните смени на левия и десния ШЛ СБР. Операция отляво на знака е посочен със стойност на операцията ще бъде извършена, както и правото - в продължение на няколко нули и единици, необходими смени сума.

    Например. 2 стойност резултат 12shr операция е 3. Тъй като двоичното представяне на числото 12 - .. 11002. 12shl 1. След приключване на операцията, т.е. чрез преместване на номера, оставен от 1 бит, получи 24. Освободена срязване бита са пълни с нули от ляво и дясно срязване - забележителност изхвърлени.

    В Pascal има два типа на логическите константи: истинските (истински) и фалшиви (фалшиво). Поради това, множество от възможни стойности за променливи тип булева, ByteBool, WordBool, LongBool (логически променливи) се състои от две стойности. Този тип се определя така, че фалшивата

    Когато вътрешната представяне на променливи като променливи тип булева, ByteBool заемат един байт от паметта; въведете WordBool видове променливи - 2 байта, тип LongBool - 4 байта. Променливи от тип ByteBool, WordBool, LongBool въведени само с цел да се гарантира, че Turbo Pascal съвместимост с други програмни езици и Windows среда.

    Следните операции могат да се извършват над логично типа данни:

    Не - логично отрицание "не" - е на едноместно операция, което е, има един операнд, който преобръща.
  • и - логическо умножение (връзка), "и". резултатът е настроен да е вярно. освен ако и двата операнда е вярно.
  • или - логично допълнение (дизюнкция) "или". резултатът е настроен да е вярно. ако поне един от операндите е вярно.
  • XOR - "изключителна или". резултатът е вярно, когато стойностите на операндите не са същите.

  • Сравнение на операциите (равно "=", както и неравномерно " <> ")

    Начетен тип обозначена с Чар на име (от думата характер - символ, знак).

    Буквалното значение на типа на променливата е един символ от набор от символи, определена от изпълнението. Въпреки това, някои от героите не може да бъде графично представяне - на контролни знаци (например преминаване от един регистър в друг, преходът към следващия ред на апарата за печат върху хартия, и т.н. ...)

    Докато Pascal не е фиксирана на определен набор от символи, но всяка версия на Паскал е настроен, трябва да отговарят на следните изисквания:

    за всеки набор от символи (букви), всички герои са фиксирани и подредени;
  • То включва всички главни букви от А до Я; този набор се подредени по азбучен ред;
  • включително десетични числа от 0 до 9; набор от възходящите номера, и е свързан;
  • ако изпълнението позволено малки букви от Z. те трябва да бъдат подредени по азбучен ред;
  • Тя включва символи като интервал, запетая, период и др.;
  • връзка ред между два символа на стойностите, определени от типа Чар трябва да бъде същата като тази между техните серийни номера.

  • Елементите на тип овъгляване се считат за номерирани, започвайки от нула. Променливите от този тип заемат 1 байт памет.

    Буквалното константа (символ) тип е един от най валидни литерали, взети в апострофи.

    Ако апостроф принадлежи на зададените стойности от тип се овъгли. апостроф, постоянната стойност се записва два пъти ( "").

    Казаното по-горе, или следните стойности по отношение на това, зависи от изпълнението на набор Чар и метод за поръчване.

    Най-Turbo Pascal като ценност знак с помощта на един характер ASCII код. За повечето герои има съответен ключ. два метода за запис се използва за контрол на ASCII символи:

    използване на знака #. преди известно число лежи в диапазона от 0 до 255 гласа, която определя броя на контрол характер ASCII,

    използването на знака ^. предходният знак.

    # 27 или # $ 1В или ^ [да избяга,

    # 7 или # 7 или $ ^ G да звучи.

    Стойността на желания характер кодът може да се определи с помощта на функции РСР. и обратната действия определят характера на даден код изпълнява функция CHR.

    Буквални данни могат да бъдат вход и изход, за да присвоите за сравнение с друг. При сравняване на героите всъщност не съм ги сравняват, и техните ASCII, Кодовете, докато един знак се смята за по-голям от друг, само ако има по-голяма ASCII- код.

    Например. "А"<'B', так как ASCII -код символа 'A' равен 65, а ASCII -код символа 'B' равен 66.

    Забележка. Има функция sizeof (х), който позволява да се определи броя на байтове, заети от определен тип промяна; х - въведете името или името на една променлива. Използването на тази функция, е възможно да се определи размера на паметта, заета от данните на стандартен или желания тип на структурни типове данни.

    Преброяване позволява на програмиста да опишат нови типове данни, чиято стойност определя програмист.

    Описание изброени тип се състои от списък на нейните елементи, разделени със запетая и затворени в скоби. Всеки един от елементите е уникален идентификатор.

    Пример. Вид Сезон = (пролет, лято, есен, зима);

    Делничен ден = (Понеделник, Вт, Ср, Thu, петък, събота, неделя);

    Var Вчера, днес, утре: делничен ден;

    Описание на вида и променливи могат да се комбинират.

    Като част от блока, където декларираните изброени тип идентификаторите на всички елементи от тип изброяване се третират като константи.

    Трябва да се отбележи, че тези номера не са низови константи в кавички не са сключени. Тъй като документи за самоличност, са изброени константи от типа на блока когато са декларирани, описанието на един и същ идентификатор в различни видове счита за грешка.

    Константи предварително определени видове не могат да бъдат стойности тип изброяване.

    константи на Асоциацията на някои основания, възложени от програмист. Променливи от типа на описаните могат да вземат всяка стойност на тези константи.

    Пример. Today. = Mon

    Интервал тип данни - това е подмножество на вече дефинирани или стандартен тип скаларни (с изключение на недвижими). Поради това, в литературата могат да бъдат намерени друго име от този тип, като ограничен тип otrezochny тип, - обхват.

    Интервал тип е гама (интервал) стойности за всеки тип ред, наречен основа. При описване на типа интервал посочено минималната и максималната стойност на диапазона от стойности, разрешени за този вид. Минималните и максимална стойност на обхвата е споделен с ".." (два периода).

    Пример. 0..500; -128..127; "А" .. "Z"; Mon..Fri

    Променлива тип интервал има всички свойства на променливата на база тип. Ето защо, всички стандартни функции и операции, които са специфични за вида на основата могат да бъдат приложени към своя сегмент, но трябва да се внимава да не се излиза извън границите, наложени.

    Ако тази база тип идентифицирани няколко сегмента, е допустимо, на променливите на тези видове могат да си взаимодействат в същите условия, те могат да бъдат използвани в ляво и дясно на оператора за присвояване, но това не винаги е възможно.

    Пример. Нека описание

    Var Година: 1980..1985;

    Тогава задачата е валидна:

    Ден: = месец; (И е възможно)

    Ден: = Година; (И невъзможни)

    Този вид се използва в случаите, когато има информация за диапазон от стойности на променливата (това спестява на паметта на програмата на машината и контрол по време на изпълнение превод).

    Тип регион реални стойности се определят чрез прилагане език подмножество от реални числа на. Този комплект не е наредил, а оттам и за стойността на този вид не се прилагат функции Succ и Предвиждане. Реални числа не могат да се използват като индекси, броячи за. селектор в случая.

    Особеността на недвижими вида се свързва със следните обстоятелства.

    Реалните числа в компютъра обикновено се представят под формата на оборотни средства. т.е. вътрешно представяне на реално число се състои от две части - мантиса и ред, и всяка част има знак.

    Например. 0087 брой представени като .87 х10 -1

    Броят на битовете, които се разпределят по реда на изображението, определя интервала от числа, така че кръгът се определя от специален компютър. За разлика от този тип число гама съдържа безкраен набор от реални числа. От образа на мантисата също се определя фиксиран брой битове, машината може да бъде точно представена от ограничен набор от реални числа. По този начин, всяко число представлява машината с различна точност някои набор от реални числа. Така че реалните числа, като цяло, изглежда, са неточни и аритметични операции върху тях не се изпълняват точно в съответствие с правилата и действията на приблизителни стойности. Ето защо, множество видове недвижими ценности и не е поръчана.

    За съхранение на променлива тип Real Turbo Pascal компилатор разпределя шест байта в RAM (1 бит за знак, 39 бита за мантиса и 8 бита за реда). Това позволява да се определят реалните числа (в абсолютна стойност) в границите от 2.9 х 10 -39 до 1.7 х 10 38.

    Съществуват няколко вида на материала, с различна точност и представяне диапазон. Точността се определя от броя на дължина мантиса и гама - за дължина.