C Programming chapter 15

C
15 ‫פ‬
Preprocessor

‫מ ע‬
‫מנ‬
SCE-Chapter-15-Preprocessor

‫נ‬
‫מ‬

,

"
‫מ ע מ‬
‫מ ע נ‬
1

‫מע‬

‫מ‬


‫ע‬
‫ממ‬
Shayke Bilu PhD

‫פ‬

-

2

0
1
2
3
4
5
6
7
SCE-Chapter-15-Preprocessor


0000
0001
0010
0011
0100
0101
0110
0111

0
1
2
3
4
5
6
7
Shayke Bilu PhD


‫פ‬

3

)

('

'



:


.1
.2

+ (compiler)
.

.

SCE-Chapter-15-Preprocessor

.3

.4

Shayke Bilu PhD

4

:C
C Data Type



Compaq Alpha Typical 32-bit Intel IA32

int


4

4

4

long int

8

4

4

char

1

1


1

short

2

2

2

float

4

4

4

double


8

8

8

long double

8

8

10/12

char *

8

4


4

SCE-Chapter-15-Preprocessor

Shayke Bilu PhD

)

(

‫פ‬

-

5

19 -

0- '


And

Not

& 0 1
0 0 0
1 0 1



George Bool
Or

' 1‫' ס‬

'




| 0 1
0 0 1
1 1 1

Exclusive-Or (Xor)
!
0 1
1 0

SCE-Chapter-15-Preprocessor

^ 0 1
0 0 1
1 1 0
Shayke Bilu PhD

‫פ‬

6




1 0
(byte)
.






C



(char, short, int, long) !!!
.

SCE-Chapter-15-Preprocessor

unsigned-



Shayke Bilu PhD

‫פ‬

-

7

)

0

" )8

(2



(



.

34

042
%o

SCE-Chapter-15-Preprocessor




Shayke Bilu PhD

‫פ‬8

" )16
66

(

0x42

)

%X

.
( %x



.

0x






unsigned
SCE-Chapter-15-Preprocessor


Shayke Bilu PhD

9

:



2
)0

"

"



(

8

7

6

5

4

3

2

1

0

256

128

64

32

16

8

4

2

1

28

27

26

25

24

23

22

21

20

,

SCE-Chapter-15-Preprocessor

"



Shayke Bilu PhD

10

:
00001101
:
128=0 ,64 =0 , 32=0 ,16=0 ,8=1 ,4=1 ,2=0 ,1=1
:13
"

,





1*1+0*2+1*4+1*8+0*16+0*32+0*64+0*128 =
1*1 + 1*4 + 1*8 =
1+4+8 = 13
SCE-Chapter-15-Preprocessor

Shayke Bilu PhD

11



:
0



2-





,

.0
SCE-Chapter-15-Preprocessor

,

,

.





Shayke Bilu PhD

12

00001000 :

8
8
4
2
1
0

SCE-Chapter-15-Preprocessor

‫ס‬



0
0
0
1

Shayke Bilu PhD

‫פ‬

13

2&3=2

1-

2|3=3
2^3=1

11-

^= , |= , &= :
SCE-Chapter-15-Preprocessor

)

1

AND

&

1

OR

|

1

XOR

^

(

Shayke Bilu PhD

‫פ‬

14

(
" (

21=1

SCE-Chapter-15-Preprocessor

.)

" (

.

!2=253

)

)

Shift Left

>>

Shift Right