User Tools

Site Tools


en:pfw:dlshift_drshift

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
en:pfw:dlshift_drshift [2024-04-09 14:29] – [Coded with LSHIFT and RSHIFT] alberten:pfw:dlshift_drshift [2024-04-09 14:41] (current) – [Test results (noForth t)] albert
Line 16: Line 16:
     negate rshift >r        \ upper lo to lower hi     negate rshift >r        \ upper lo to lower hi
     lshift                  \ lo'     lshift                  \ lo'
-    2r> r> or or   ;        \ build hi'+    2r> r> or or   ;        \ compose hi'
          
 : DRSHIFT ( lo hi n -- lo' hi' )    \ n in [0,32*2] : DRSHIFT ( lo hi n -- lo' hi' )    \ n in [0,32*2]
Line 23: Line 23:
     2dup   rshift >r        \ upper hi to lower lo     2dup   rshift >r        \ upper hi to lower lo
     negate lshift >r        \ lower hi to upper lo     negate lshift >r        \ lower hi to upper lo
-    rshift 2r> or or        \ build lo'+    rshift 2r> or or        \ compose lo'
     r> ;                    \ hi'     r> ;                    \ hi'
 </code> </code>
Line 40: Line 40:
 : (TEST) ( ud ud -- ) 2over 2over du.hex du.hex : (TEST) ( ud ud -- ) 2over 2over du.hex du.hex
     cr ." #shifts dlshift--------- drshift---------"     cr ." #shifts dlshift--------- drshift---------"
-    32 2* +   -2+    32 2* +   -2
     do cr i 3 and 0= if cr then i 7 .r space     do cr i 3 and 0= if cr then i 7 .r space
         2over 2over i dlshift du.hex i drshift du.hex         2over 2over i dlshift du.hex i drshift du.hex
Line 136: Line 136:
  
      40 0000000000000000 0000000000000000      40 0000000000000000 0000000000000000
-     41 0000000000000000 0000000000000000 +     41 0000000000000000 0000000000000000 OK.0
-     42 0000000000000000 0000000000000000  OK.0+
 </code> </code>
 <code> <code>
- 
 @)test2 0000000000000001 8000000000000000 @)test2 0000000000000001 8000000000000000
 #shifts dlshift--------- drshift--------- #shifts dlshift--------- drshift---------
Line 227: Line 225:
  
      40 0000000000000000 0000000000000000      40 0000000000000000 0000000000000000
-     41 0000000000000000 0000000000000000 +     41 0000000000000000 0000000000000000  OK.0
-     42 0000000000000000 0000000000000000  OK.0+
 </code> </code>
 ===== Contributions ===== ===== Contributions =====
en/pfw/dlshift_drshift.1712665772.txt.gz · Last modified: 2024-04-09 14:29 by albert