Nästa: Väljare till kompilatorn
Upp: Användarhandledning för Pascal på
Förra: Initiering av variabler
I standardpascal kan man använda teckenkombinationerna (. och .) synonymt med [
och ]. I Solarispascal kan man bara använda [ och ] om man inte tar med väljaren -s vid kompileringen.
Solarispascal förstår bland annat följande symboler som inte ingår i standardpascal:
- ~
- Unär bitvis ICKE-operator. Byter nollor mot ettor och vice versa i den binära representationen av ett tal.
Exempel: ~ 4
- &
- Binär bitvis OCH-operator. Exempel: 4 & 5
- !
- Binär bitvis ELLER-operator. Exempel: 4 ! 3
- #
- 1.
- Sätts före include. Med en rad av typen
#include 'diverse.h'
får man samma effekt som om innehållet i den angivna filen stod
på den platsen. Detta kan vara praktiskt när man vill ha samma
definitioner och deklarationer i flera program, se
avsnitt 14.
Tecknet # måste komma först på raden. Man får alltså inte göra
någon indragning av en #include-sats.
- 2.
- Specificerar ett heltal i en annan bas än 10. Basen kommer först följd av # och värdet.
Exempel: p:=2#10110; (*binärt*). Med stora baser får man
använda engelska bokstäver i alfabetisk ordning:
p:=16#3A7F; (*hexadecimalt*).
Basen får inte vara större än 36, för då räcker inte siffrorna
och bokstäverna till.
Observera hur datorer (i regel) lagrar negativa tal. Datorn kodar
tal binärt i en byte på det här sättet: Först kommer naturliga tal
lagrade på vanligt sätt, d v s som
Så håller det på ända till
talet
. Därefter hoppar man ner till de
allra lägsta negativa talen,
som i datorn
motsvaras av
,
,
,
,
. Vitsen med det här är att addition med ett negativt
tal kan göras direkt utan omvandling. Exempel: 103 + (-77) = 26.
I datorn motsvaras 103 av 0110 0111 och -77 av 1011 0011. Adderar man
talen får man summan 10001 1010 som ju har nio siffror! På grund av datorns
arkitektur försvinner helt enkelt den första siffran och återstoden,
0001 1010 blir just 26 decimalt.
Nästa: Väljare till kompilatorn
Upp: Användarhandledning för Pascal på
Förra: Initiering av variabler
Viggo Kann
Fri Aug 7 00:55:14 MET DST 1998