| 数据搜索系统,热门电子元器件搜索 |
|
ST20-C1 数据表(PDF) 44 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
ST20-C1 数据表(HTML) 44 Page - STMicroelectronics |
|
44 / 205 page ![]() 4.6 Comparisons and jumps 44/205 ® Implementation of languages with different representations of true and false It is easy to implement programming languages that use a different representation of true and false. For example, using eqc X; not; adc 1 in place of eqc X and gt; not; adc 1 in place of gt, does not affect the representation of a false result, but changes the representation of true to -1, which is used in some programming languages. 4.6.2 Comparison The primary instruction eqc n loads Areg with a truth value — true if Areg is initially equal to the instruction operand ( n), false otherwise. Breg and Creg are unaffected. gt and gtu take integer operands in Areg and Breg and produce a boolean result which is loaded into Areg. They also load the value in Creg into Breg, saving a copy of the initial Areg in Creg. The gt instruction loads Areg with true if Breg > Areg, false otherwise, treating Areg and Breg as signed values. Similarly gtu loads Areg with true if the unsigned value of Breg is greater than the unsigned value of Areg; false otherwise. 4.6.3 Jump and conditional jump There are two relative jump instructions; both are primary instructions. The unconditional jump instruction, jn, adds its operand (n) to the address of the instruction immediately following it and puts the result into Iptr, thus transferring execution to another part of the program. The conditional jump instruction, cj n, performs a jump if the value in Areg is 0 and does not affect the evaluation stack. If the value in Areg is not 0 cj rotates the value in Areg to the bottom of the evaluation stack and continues with the next instruction. Consequently cj n serves as ‘jump if false’ provided that the language being imple- mented interprets 0 as false (see section 4.6.1). 4.6.4 Conditional transfer of control The conditional expressions used in a conditional branch of an if construct are compiled using the conditional jump. The statement: if ( E){ P } This compiles to: E; cj L; P; j ENDIF; L: |
|
链接网址 |
| ALLDATASHEET是否为您带来帮助? [ DONATE ] |
关于 Alldatasheet | 广告服务 | 联系我们 | 隐私政策 | 数据表链接 | 链接交换 | 制造商名单 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 |