.


:




:

































 

 

 

 


____________ ..

___ ____________ 2009 .

 

 

 

 

 

 

8

1

230105

010503 .

 

2009


539.3

. : 8 1 230105 010503 . : , 2008. 12 .

 

.. ,

. .

 

( 6 13.02.09)

 


 

:

1.

2. , ,

 

: .

 

4 .

 

 

2. *

, , , , .. . , int 2 , . 16 ( Windows 4 ). : ( *,/, +, -, %), , .

. , .

:

 

~ (),

& "" (),

^ " " (),

| "" ().

 

.

 

 


 

op1 op2 ~op1 op1 & op2 op1 ^ op2 op1 | op2
           
           
           
           

 

.

, | :

/* a = 00001001 = 9 */

char a, b; /* 00011010 = 26 */

a = 9; /* -------- */

b = a | 26 /* b = 31 */ /* b = 00011011 = 31 */

 

, & :

 

char a, b; /* a = 00101101 = 45 */

a = 45; /* 00001111 */

b = a & 0x0F; /* -------- */

/* b = 00001101 = 13 */

 

, ^ :

 

char a, b; /* a = 00101001 = 41 */

a = 41; /* 00001111 */

b = a ^ 0x0F; /* -------- */

/* b = 00100110 = 38 */

 

<< >>:

 

a << b a b ,

a >> b a b .

 

:

char a, b;

a = 26; /* a = 00011010 = 26 */

b = a << 2; /* b = 01101000 = 104 */

 

2 . - 2 .

. : ~, << >>, &, ^, |

 

 

 

1.

2.

3. ,

4.

 

 

1. (, , ) int (16 ) : 5 , 4 , 7 .

: 15 2008 -> 0001000 0011 01111

2. (, , ) int (16 ) : 6 , 6 , 4 0 12.

3. int (16 ) : ( 0 127) 7 , 1 , 1 , - 4 .

4. int (16 ) : 2 , 4 , 1 .

5. int (16 ) : 1 - , 10 , 1 , 4 .

: 7.87 ( 787*10-2) -> 0 1100010011 1 0010

: -5676500.45 ( -567*104) -> 1 1000110111 0 0100.

.

:

pw=floor(log10(fabs(val)))-2;

:

fpp = floor(val/pow10(pw));

6. int (16 ) : 4 , ( 33 48) 4 , / 1 , - 2 .

7. int (16 ) : (R12 - R19) 3 , ( 100) 7 , ( 40) 6 .

: 175/70 R13 001110 1001011 001 ( 175 , 70 ).

8. int (16 ) : 4 , 3 , 4 .

9. int (16 ) : 4 , 4 , 7 .

10. char (8 ) : 4 , 2 , / 1 , 1 .

11. . : , . . , .

12. . : , . . , .

13. . : 4- ( XOR), . . , .

14. . : 4- ( XOR), . . , .

15. . : , ( XOR). . , .

16. . : ; . . , .

17. . : 4- ( XOR), 3 . . , .

18. . : 4- ( XOR), . . , .

19. . : ( XOR), . . , .

20. . : , ( XOR). . , .

 

 

:

-

- 1-10:

× (, , ; , , ..)

× int,

× int

× - int

× (, , ; , , ..)

× int ;

 

- 11-20:

×

×

×

×

 

, , , , .

 

 

 

int : , 8 .

 

#include<conio.h>

#include<stdio.h>

 

int incode(unsigned int data)

{

unsigned int rez;

char tmp;

 

//

tmp = data&3;

 

//

rez = (data>>2)|(tmp<<14);

 

// 8

rez = rez^(0xFF);

 

return rez;

}

 

int decode(unsigned int data)

{

unsigned int rez;

char tmp;

 

// 8

rez = data^(0xFF);

 

//

tmp = (rez>>14)&3;

 

//

rez = (rez<<2)|tmp;

 

return rez;

}

 

void printBinary(unsigned int v)

{

int i;

for(i=sizeof(int)*8-1; i>=0; i--)

printf("%d", (v>>i)&1);

printf("\n");

}

 

void main(void)

{

unsigned int v_in, v_out;

clrscr();

printf(" ");

scanf("%u", &v_in);

 

v_out = incode(v_in);

printf(" %u\n", v_in);

printf(" : ");

printBinary(v_in);

printf(" %u\n", v_out);

printf(" : ");

printBinary(v_out);

printf(" %u\n", decode(v_out));

getch();

}

 

 

101

101

: 0000000001100101

16614

: 0100000011100110

101

 

 

1. 0?

2. 1?

3. 0 , ?

4. : (v>>5)&1? v&(1<<5)?

5. , (, (45^82)^82)?

6. (~) (!)?

7. ?

8. ?

9. , 18 (x|18)? , 18 ((x|18)|18)?

10. ?

 


 

1. .., .. ++. .: -, 2007. 288.

2. , . : [. .]/ . , . . .: -, 2002. 1168.

3. ., .. . .: , 2000. - 350 .

4. ., .. . - .: , 2001. - 380 .

5. . ., . .. /++. : . .: , 2007. 238 .

6. ... /++. . .: , 2006. 464 .

 

 


. : 8 1 230105 010503 .

 

 


 

 

..

..

..

 

 

2009., .295

. 60x84 1/16. .

. . . 0,7 .-. . 0.7 30 .

 

241035, . , . 50- , 7, . 58-82-49

, . , 9.



<== | ==>
. 1. |
:


: 2017-03-18; !; : 422 |


:

:

,
==> ...

975 - | 884 -


© 2015-2024 lektsii.org - -

: 0.079 .