dz��ƕ��ʽc�ż�����-pg电子下载


�����ծ�����֧�����ǵĺ�����ҵ��

10Ԫ 50Ԫ





��֤�룺  ��֤��,�������?����ˢ����֤�� ����



  pg电子下载 ����    
   
 
     
   
dz��ƕ��ʽc�ż�����
 
  3433  次浏览      17
 2019-4-29
 
�༭�ƽ�:
����������csdn�����ľ�ƕ��ʽ��������ϵͳ������,��θ��õ�����ϵͳ��դ,�դ�������ż����������ۣ�ϣ��������ѧϰ����������

1 ����

ƕ��ʽϵͳ��ָ���һ�ֻ����ض����ܵļ����ϵͳ,�����զ����̶ȸ�,��ӧ�ٶȿ���ŵ�,ŀǰ�ѹ㷺ӧ�������ѵ���,��ҵ���ƶ�����.ƕ��ʽϵͳ����ʹ�õ�ӳ���լ����л���������,�dz�ע�ش����ʱ��Ϳռ�ч��,���ѡ��һ�ֺ��ʵŀ�������ʮ����ҫ.ŀǰ,��ƕ��ʽϵͳ�����п�ʹ�õ����ժܶ�,���� c����ӧ�õ���㷺.��ȼ�� c ���ա�̾��������ŵ�,������ƕ��ʽϵͳ��c���ժͱ�׼ c�������кܴ�����.�������ҽ��ƕ��ʽϵͳ���ص���լ���һщ����,�����ڳ�������д����ż���һщс����.

2 ƕ��ʽc���ե��ص�

��ϊһ�ֽṹ�������������,c ���լ�˶��ָ߼����ե��ص�,���к�ǿ�ĺ����ժͿ���ֲ��.����ƕ��ʽϵͳ������,���ڶեͼ۲�ʒ������,ϵͳ�ļ��������ʹ洢�������dz�����,���������ú���щ��դ���ե�ʮ����ҫ.������աӧע��ƕ��ʽ c���ժͱ�׼ c ���ե�����,�������ɴ��볤��,��߳���ִ��ч��,�ڳ�������жդ�������ż�.

3 c�����ڳ����е��ż�

���ڵ� c ���������զ��դ�������ż�,����щ�ż��ƕ�ִ���ٶⱥʹ��볤�ȵ�ƽ��.���ҫ��ø�с��ִ��ч�ʸ��ߵĵ���,��ҫ����ա�ֹ��դ�������ż�.

4 �������͵ķ���

��ͬ���������������ɵļ������볤�����ܶ�,��������ѡȡ�ķ�χխс�����ٶ�խ��,ռ�õ��ڴ�խ��.�ܹ�ʹ���ַ���(char)����ı���,�ͳ�ҫʹ������(int)����������;�ܹ�ʹ�����ͱ�������ı����ͳ�ҫ�ó�����(long int),�ܲ�ʹ�ø�����(float)�����ͳ�ҫʹ�ø����ͱ���.��ͬ���͵���������,���޷��ŷի������볤��ҳ��ӱ��.�������ӧ����ʵ����ҫ������ѡ����������.��ȼ,�ڶ��������ҫ�������������÷�χ,������������ķ�χ��ֵ,c��������������,���������н��ȴ����,���������ĵ�����ѷ���.

5 �㷨�ż�

�㷨�ż�ָ�գ���ʱ�ո��ӷȵ��ż�:�� pc ���ͻ��г������ʱһ�㲻�ع����ע�������ij���,ֻ�迼�ǹ��ܵ�ʵ��,��ƕ��ʽϵͳ�ͱ��뿼��ϵͳ��ӳ����դ,�ڳ������ʱ,ӧ�����������ɴ���̵��㷨,�ڲ�ӱ�������ʵ�ֵ�������ż��㷨.

6 �ʵ���ʹ�ú�

�� c������ʹ�ú���������߳����ִ��ч��.����뱾�����ǻ���.��ʹ����������.��������ҫʹ��ϵͳ��ջ����������,ͬʱ cpu �ں�������ʱ��ҫ����ͻָ���ǰ���ֳ�,���н�ջ�ͳ�ջ����,���ժ�������ҳ��ҫ cpuʱ��.���궨���û���������:�궨�������ϊԤ��д�õĵ���ƕ�뵽��ǰ������,��������������,��ռ�õľ�����һщ�ռ�,ʡȥ�˲���ѹջ,���ɻ�����ե� call ����,���ز���,ִ�� return�ȹ���,�ӷ�����˳����ִ���ٶ�.��ȼ���ƻ��˳���ŀɶ���,ʹ�ŵ������鷳,������ƕ��ʽϵͳ,ϊ�˴ﵽҫ�������,ƕ����볣���dz��������.

����,���ǻ�ҫ���ⲻ��ҫ�ĺ�������,�뿴����ĵ���:

void str_print( char *str )
{
int i;
for ( i = 0; i < strlen ( str ); i )
{
printf("%c",str[ i ] );
}
}
void str_print1 ( char *str )
{
int len;
len = strlen ( str );
for ( i = 0; i < len; i )
{
printf("%c",str[ i ] );
}
}

��ע��,�����������ĺ�������.ȼ��,��һ����������strlen�������,���ڶ�������ֻ���ú���strlenһ��.��˵ڶ��������������աȵ�һ����.

7 ��ƕ���

�����ж�ʱ��ҫ����̵ij��ֿ�������ƕ�������д,�դ����ٶ��ϵ��������.����,�����ͳ��ի�������һ������ĺ���,�������ѹ�����ʱ��,���ҫ����ѡ��ҫ�û��ij���.�ڳ�����,����һ��80-20ԭ��,��20%�ij���������80%������ʱ��,�������ҫ�ľ�ч��,����ҫ�ǿ��ǹľ���20%�ĵ���.

8 ���ѭ�����ե�ч��

�� c ������ѭ�����ʹ��ƶ��,���ѭ����ч�ʵļ����취���ǽ���ѭ����ĸ�����:

(1)�ڶ���ѭ����,ӧ�����ѭ���������ڲ�,��̵�ѭ�����������.�������լ��� cpu����ѭ���ĵ���.���� 1-1 ��ч�ʱ� 1-2 ��ч��ҫ��:

for (j = 0; j < 30; j )
{
for (i = 0; i < 10; i )
{
... ...
}

} // ���� 1-1
for (i = 0; i < 10; i )
{
for (j = 0; j < 30; j )
{
... ...
}

} // ���� 1-2

�� 1-1��ѭ�������,ч�ʵ�;�� 1-2��ѭ�����ڲ�,ч�ʸ�.

(2) ���ѭ���������߼��ж�,����ѭ��������,ӧ��ѭ���ж��ƶ�ѭ������.���� 2-1���� 2-2 ��ִ���� k-1 ���ж�,��������ǰ��ƶ�������ж�,�����ѭ��"��ˮ��"��ҵ,ʹ�ñ��������ܶ�ѭ�������ż�����,������ч��

for (i = 0; i < 10000; i )
{
if (����)
���;
else
���;
} // ���� 2-1 �����൫ч�ʵ�
if (����)
{
for (i = 0; i < 10000; i )
���;
}
else
{
for (i = 0; i < 10000; i )
���;
} // ���� 2-2 ���򲿼�൫ч�ʸ�

9 ��� switch ����ч��

switch ����� c �����г��õ�ѡ�����, �ڱ���ʱ�����if- else- if ƕ�״���,������˳����бƚ�,����ƥ��ʱ,����ת���������������ִ��.

�� switch ����е� case ��źܶ�ʱ,ϊ�˼��ٱƚϵĵ���,���԰ѷ���ƶ����ըߵ������ŵ���һλ���߰����� switch ���ת��ƕ�� switch ���.�ѷ���ƶ�ʸߵ� case ��ŷ��������� switch �����,�������ƶ����ե͵� case ��ŷ�������� switch �����.���� 3 ��,�ѷ����ʸߵ�case ��ŷ������� switch �����,�ѷ���ƶ�ʵ͵ķ���ȱʡ ��(default)�ڲ� switch �����

switch (����ʽ)
{
case ֵ1:
���1: break;
case ֵ2��
���2��break;
... ...
/*�ѷ���ƶ�ʵ͵ķ����ڲ��switch�����*/
default:
switch (����ʽ)
{
case ֵn:
���n: break;
case ֵm:
���m: break;
... ...
}
}

����3 ʹ��ƕ��switch�����߳���ִ��ч��.

10 ����ʹ�ñ�׼��

ʹ�� c���ա�׼����լӿ쿪������,�����ڱ�׼����ҫ�跨�����û����п������������,���ժܶ��׼�����ܴ�.�����׼���е� sprintf�����dz���.����ӵ�ĵ������кܴ�һ�������ڴ���������,��������в���ҫ��ʽ��������ֵ( ��%f),���������ա�Ϳ��ը���ʵ������������ĵ���ʵ���������.

11 ������ѧ�����ż�����

��ѧ�ǽ����֮ĸ,û����ѧ�����ݺͻ���,��û�м�����ķ�չ,�����ڱ�д�����ʱ��,����һщ��ѧ������գ����ִ��ч���������������.��ʱ��������ⳣ������һ���, ����û�о���ij���ա��˵�������.����:�� 1~100 �ĺ�

sum = 100*(100 1)/2; ��ѧ��ʽ. (a1 an)*n/2

ʹ��c���ե�λ�������լ��ٳ�����ȡģ������.�ڼ�������������ݵ�λ�ǿ��բ�������с���ݵ�λ,�����ͽ����á�λ���㡱��������е�����ͳ���.���,����λ����������ч����߳������е�ч��.��������λ�������������:����:128 / 8 ->> 128 >> 3;

�ż��㷨�����ݽṹ����ߴ����ч���кܴ�i���.��ȼ��ʱ��ʱ��ч�ʺͿռ�ч���ƕ�����,��ʱӧ�����ĸ�����ҫ, �����ʵ�������.����,�ڽ����ż���ʱ��ҫƭ���׷����յĵ���,��ϊ���յĵ��벢���ܲ�����ч�ʵļ�����.

12 �洢������

���ڳɱ�����,ƕ��ʽϵͳ�洢����������.���������еı���,�����ŀ⺯���լ���ջ�ȶ�ʹ�����޵��ڴ�:ȫ�ֱ�������������χ�ڶ���ч.����ִ�����ż��ͷ�;��̬���������÷�χҳ����������,ֻ�оֲ������еķ�̬�����ں���ִ�������ͷ�.���, �ڳ�����ӧ����ʹ�þֲ�����,����ڴ�ʹ��ч��.�����жѵĵ�с����������ȫ�����ݺ�ջ�ռ䶼������ʣ����,�����̫с,�����ܹ�����ҫ��ʱ������ڴ�.�����ʹ�� malloc ���������ڴ�֮��һ��ҫ�� free ���������ͷ�, ��ֹ�ڴ�й¶.

13ѡ��õ�����ѭ��

�ڱ����,���dz�����ҫ�õ�����ѭ��,���õ����ַ�����while (1) �� for (;;).�����ַ���ч����ȫһ��,����һ�ָ�����?ȼ���ǿ������dz����ĵ���:

����ǰ��

while (1)��

�����

mov eax��1

test eax��eax

je foo 23h

jmp foo 18h

����ǰ��

for (;;)��

�����

jmp foo 23h

��ȼ��for (;;)ָ����,��ռ�üĵ���,����û���ж�,��ת,��while (1)��.

14 ʹ��memoization,�ա���ݹ��ظ�����

����fibonacci(쳲�����)����,fibonacci�����ǿ���ͨ���򵥵ĵݹ鷽�������:

int fib ( n )
{
if ( n == 0 || n == 1 )
{
return 1;
}
else
{
return fib( n - 2 ) fib ( n - 1 );
}
}

ע:������,���ǿ���fibonacci ϵ�д�1��ʼ,���,��ϵ�п�����:1��1��2��3��5��8����

ע��:�ӵݹ���,���ǽ���fib(3)����2��,fib(2)����3��.������ͬ�������ظ�����.���n�dz���,fib������ч�ʻ�ƚϵ�.memoization��һ���򵥵ļ���,���ա����ڵݹ�,��ǿ�����ٶ�.fibonacci ����memoization�ĵ�������:

int calc_fib ( int n )
{
int val[ n ] , i;
for ( i = 0; i <=n; i )
{
val[ i ] = -1; // value of the first n 1 terms of the fibonacci terms set to -1
}
val[ 0 ] = 1; // value of fib ( 0 ) is set to 1
val[ 1 ] = 1; // value of fib ( 1 ) is set to 1
return fib( n , val );
}

int fib( int n , int* value )
{
if ( value[ n ] != -1 )
{
return value[ n ]; // using memoization
}
else
{
value[ n ] = fib( n - 2 , value ) fib ( n - 1 , value ); // computing the fibonacci term
}
return value[ n ]; // returning the value
}

���˱���ϵļ�����,ϊ���ϵͳ������ч��,����ͨ��ҳ��ҫ�����ܵ����ø���ӳ���豸�������ص�����с����ת����,�����с�жθ���,����dma���䷽ʽ��.

����ƕ��ʽϵͳ,�������ڿ����ٶ�,�����ɿ����լ����������ȷ��涼�������ե�����.��ȼ�����ż��ķ������кܶ�,����ֻ��д����һ����,ϣ����ϊ������ա�ṩһщ����,ҳ��ӭ������խ���.

ԭ�ģ�https://blog.csdn.net/u013467442/article/details/47071171

 
   
3433 �����       17
 
�������

 
����ĵ�

 
��ؿγ�

"));
网站地图