.
, , . .
, 1000- , :
for (i = 1; i <= 1000; i = i + 1);
x[i] = x[i] + y[i].
, .
. , , .
, , , . , .
, .
, , . : , .
j i, :
i , j;
j k, k i.
, , . .
, . , , , , . , , .
, . , , ( , ). , , , , -.
.
|
|
. , ( , ), . i, j :
1. i j , j , () i i .
2. , i j . .
, , , . , , , , ( ), , , . (register renaming). , .
. , , , , . , , . , then if. , :
if p1 {
S1;
};
if p2 {
S2;
}
S1 p1, S2 p2 p1.
, :
1. , , , . , then if if.
2. , , , . , , if then .
, , . , . , , .
|
|
, , .
:
for (i=1; i<=100; i=i+1) {
A[i+1] = A[i] + C[i]; /* S1*/
B[i+1] = B[i] + A[i+1]; /*S2*/
}
, A, B C , . ?
:
1. S1 , S1 , i A[i+1], i+1. S2 B[i] B[i+1].
2. S2 A[i+1], S1 .
. , , , . S1 S1. , . , S1 , S1 .
(S2 S1) . , , , , .
, , .
:
for (i=1; i<=100; i=i+1) {
A[i] = A[i] + B[i]; /* S1 */
B[i+1] = C[i] + D[i]; /* S2 */
}
S1 , S2 , S2 S1 .
, . : S1 S2, S2 S1. , .
, , . :
1. S1 S2 . , . , S2.
2. S1 B[1], .
:
A[1] = A[1] + B[1];
for (i=1; i<=99; i=i+1) {
B[i+1] = C[i] + D[i];
A[i+1] = A[i+1] + B[i+1];
}
B[101] = C[100] + D[100].
, , .
, .