operațiuni Semne în turbo 7 pascal

4.4. Semne operatiuni in Turbo Pascal 7

Dacă operațiunile multiple de date utilizate, tipurile lor trebuie să fie identice sau compatibile (vezi. Nr. 9.1 și 9.2).

Această secțiune va examina funcționarea și simbolurile lor utilizate cu un tip simplu de date (aritmetice, operații logice pe biți de informații, operatorii relaționale). Alte operații sunt discutate în secțiunile care descriu tipuri de date corespunzătoare.

4.4.1. operații aritmetice

Operațiile aritmetice se aplică numai valori întregi și tipuri reale. Acestea pot fi împărțite pe operații unare și binare.

+ Unar plus semnul plasat înainte de orice valoare întreagă sau un tip real nu are nici un efect asupra valorii acestei cantități.

semnul minus unar - a pus înainte de valoarea sau întreg sau cu valori reale, ceea ce duce la schimbări în semn.

operații aritmetice binare și semnele lor sunt date în tabel. 5.

Tabelul 5. Arithmetic

Notă. Rezultatul reală va fi de tip Extended, dacă utilizați comutatorul compilator, și tipul de Real - altfel.

Semne ale operațiunilor +, - și * sunt, de asemenea, utilizate cu alte tipuri de operanzi, dar atunci ei au un sens diferit. În operațiunile de divizare împărțitor nu trebuie să fie zero. Când se utilizează placa operație, acesta este un cuvânt serviciu, acesta trebuie să fie separate prin cel puțin un separator operanzi.

4.4.2. operații logice

operațiile logice sunt aplicate la valorile Boolean, rezultatul operației - același tip logic. Există o logică nu operație unară (negație) și trei operațiuni binare și (AND) sau (OR), XOR (SAU exclusiv). Ele sunt definite de adevăr tabelele 6 și 7.

Tabelul 6. operațiuni de masă Adevărul nu

În Turbo Pascal, există două tipuri de expresii logice de calcul: complete și abreviate.

Calculul complet înseamnă că fiecare operand este evaluat, chiar dacă știți deja rezultatul întregii expresiei.

Calculul se realizează Mai scurte, atâta timp cât acesta va fi cunoscut rezultatul întregii expresie, și apoi calcularea următoarelor operanzilor terminate.

Să presupunem că, având o expresie a A și B, unde A și B - unele expresii logice (operanzilor). La calculul integral oricum calculată și valoarea A și valoarea B, și numai valoarea apoi generat din întreaga expresie, pentru scurtarea calculului, dacă valoarea A = False, exprimarea B nu este calculată, adică. K. nu afectează rezultatul, care în În ambele cazuri va fi fals. În acest caz, oarecum redus timpul de calcul.

Selectarea tipului de calcul se realizează prin utilizarea unei chei compilator $ B (a se vedea. P. 17.7.1). Dacă se utilizează o cheie (această opțiune este selectată implicit), a produs un calcul scurtat. Dacă selectați o cheie, a făcut un calcul complet. alegere greșită de calcul de tip poate provoca, uneori, o eroare.

Exemplu. Când trebuie să utilizați short-cut expresii logice de calcul.

if (i> = Low (Arr)) și (i = Low (Arr)) și (i = Low (Arr)) și (i 0) și

(FuncRead> 0) atunci

4.4.3 Operații cu biți de informație

Operațiile nu, și, sau, xor pot fi utilizate pentru a bitwise operații cu întreg, tipul rezultatului determinat de cel mai mic tip operanzi (având cea mai mică dimensiune). Atunci când este aplicat la numere întregi, aceste operațiuni au următoarele semnificații:
    nu - operațiune unar de inversare toți biții unui număr întreg;
    și - o bitwise logică și funcționare a două numere întregi;
    sau - o operație logică SAU bitwise a două numere întregi;
    XOR - bitwise operațiune logică XOR două numere întregi.
Acest grup poate include SHL operarea și SHR, au următoarele semnificații:
    SHL - operație shl I I J transferă conținutul stânga la biții J. Biții eliberați sunt umplute cu zerouri.
    SHR - operație am mută conținutul SHR biți J I J la dreapta. Biții eliberați sunt umplute cu zerouri.

Exemplu. Folosind operațiunile biții de informație.

Trebuie să introduceți un număr întreg fără semn. În cazul în care acest număr este chiar - de a aduce octet său cel mai semnificativ, iar în cazul în care impar - junior (similar cu acțiunea de funcții standard Hi și Lo - vezi secțiunea 16.1 ..).