| Electronic Components Datasheet Search |
|
ST20-C1 Datasheet(PDF) 183 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
ST20-C1 Datasheet(HTML) 183 Page - STMicroelectronics |
|
183 / 205 page ![]() 183/205 ® then the total stack requirement is the larger stack requirement of the individual expressions. This is only the case if care is taken over the order of evaluation. Note that ‘infinite’ should be taken as meaning greater than any finite depth - because a function call does not preserve values on the stack. Let the function eval( e, r ) evaluate expression e where there are r registers available to perform the evaluation. Where this expression is an operation on two sub expres- sions - e1 op e2 - it is efficiently evaluated by the following algorithm, where op commutes is true if aop b is equal to bop a and false otherwise: if (depth(e1) < r AND depth(e2) < r) /* i.e. depth of both expressions is less than the number of registers available */ { if (depth(e2) > depth(e1)) { if (op commutes) { eval( e2, r ); eval( e1, r-1 ); op } else { eval( e2, r ); eval( e1, r-1 ); rev; op (*) } } else if (depth(e2) <= depth(e1)) { eval( e1, r ); eval( e2, r-1 ); op } } else if (depth(e1) >= r OR depth(e2) >= r) { if (depth(e2) >= depth(e1)) { if (depth(e1) >= r ){ /* i.e. both depths >= r*/ eval( e2, r ); stl temp; eval( e1, r ); ldl temp; op } else { /* i.e. depth(e1) < r AND depth(e2) >=r */ if (op commutes) { eval( e2, r ); eval( e1, r-1 ); op } else { /* i.e. operation doesn’t commute */ eval( e2, r ); eval( e1, r-1 ); rev; op } } } else if (depth(e2) < depth(e1)) { if (depth(e2) >= r) { /* i.e. both depths >= r*/ if (op commutes){ eval( e1, r ); stl temp; eval( e2, r ); ldl temp; op } else { eval( e2, r ); stl temp; eval( e1, r ); ldl temp; op } } else { /* i.e. (depth(e2) < r) AND depth(e1) >= r*/ eval( e1, r ); eval( e2, r-1 ); op |
|
Link URL |
| Does ALLDATASHEET help your business so far? [ DONATE ] |
About Alldatasheet | Advertisement | Contact us | Privacy Policy | Link to Datasheet | Link Exchange | Manufacturer List All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |