亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? assem.fth

?? OLPC項目中CPU代碼源
?? FTH
字號:
vocabulary 8051-assembler: assembler  8051-assembler  ;assembler also definitionsdefer asm8@	 also forth ' c@    previous   is asm8@defer asm8!	 also forth ' c!    previous   is asm8!defer here	 also forth ' here  previous   is heredefer asm-allot	 also forth ' allot previous   is asm-allot\ append values to the end of a code definition which is being built.\ always little-endian:: asm8,   ( n -- )  here 1 asm-allot asm8!  ;d# -1 constant #d# -2 constant @R0d# -3 constant @R1d# -4 constant R7d# -5 constant R6d# -6 constant R5d# -7 constant R4d# -8 constant R3d# -9 constant R2d# -10 constant R1d# -11 constant R0d# -12 constant A\ Port bits: bitnum:  create , does> @ +  ;8 0 do  i bitnum:  loop   .0 .1 .2 .3 .4 .5 .6 .7\ SFRsh# 80 constant p0h# 81 constant sph# 82 constant dplh# 83 constant dphh# 87 constant pconh# 88 constant tconh# 89 constant tmodh# 8a constant tl0h# 8b constant tl1h# 8c constant th0h# 8d constant th1h# 90 constant p1h# 98 constant sconh# 99 constant sbuf \ not bit-addressableh# a0 constant p2h# a8 constant ieh# b0 constant p3h# b8 constant iph# d0 constant pswh# e0 constant acch# f0 constant b\ KB3700 extensions/changesh# 80 constant p0ie  \ Bits enable corresponding interrupth# 86 constant pcon2 \ Various, see KB3700 manual (page 35)h# 90 constant p1ie  \ Bits enable corresponding interrupth# 9a constant scon2 \ Extended baud rate divisor, low byteh# 9b constant scon3 \ Extended baud rate divisor, high byteh# b0 constant p3ie  \ Bits enable corresponding interrupt h# d8 constant p0if  \ Bits report corresponding interrupt statush# e8 constant p1if  \ Bits report corresponding interrupt statush# f8 constant p3if  \ Bits report corresponding interrupt status: acall  ( adr -- )     \ ppp1.0001 llll.llll   \ XXX check that adr matches high 5 bits of PC   h# 7ff and  wbsplit        ( low high )   5 lshift  h# 11 or  asm8,  ( low )   asm8,;: ajmp  ( adr -- )     \ ppp1.0001 llll.llll   \ XXX check that adr matches high 5 bits of PC   h# 7ff and  wbsplit        ( low high )   5 lshift  h# 01 or  asm8,  ( low )   asm8,;: iram,  ( n -- )   dup h# ff >  abort" IRAM address too large"   asm8,;: immed,  ( n -- )   dup h# ff >  abort" Immediate value too large"   asm8,;: byte-offset?  ( offset -- flag )  h# -80 h# 7f between  ;: rel!  ( to from -- )   tuck  1+ -    ( from offset )   dup byte-offset? 0= abort" Bad branch offset"   swap asm8!;: rel,  ( n -- )  here rel!  1 asm-allot  ;: add  ( n [ # or @ ] -- )   dup #  =  if  drop h# 24 asm8,  immed,  exit  then   dup @R0  =  if  drop h# 26 asm8,  exit  then   dup @R1  =  if  drop h# 27 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# 28 + asm8,  exit  then   h# 25 asm8,  iram,;: addc  ( n [ # or @ ] -- )   dup #  =  if  drop h# 34 asm8,  immed,  exit  then   dup @R0  =  if  drop h# 36 asm8,  exit  then   dup @R1  =  if  drop h# 37 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# 38 + asm8,  exit  then   h# 35 asm8,  iram,;: subb  ( n # | n | @Rn | Rn ] -- )   dup #  =  if  drop   h# 94 asm8,  immed, exit  then   dup @R0  =  if  drop h# 96 asm8,  exit  then   dup @R1  =  if  drop h# 97 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# 98 + asm8,  exit  then   h# 95 asm8,  iram,;: anl  ( n # | n | @Rn | Rn ] -- )   dup #  =  if  drop  h# 54 asm8,  immed,  exit  then   dup @R0  =  if  drop h# 56 asm8,  exit  then   dup @R1  =  if  drop h# 57 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# 58 + asm8,  exit  then   h# 55 asm8,  iram,;: anlr  ( iram -- )  h# 52 asm8,  asm8,  ;: anli  ( data iram -- )  h# 53 asm8,  asm8,  asm8,  ;  \ ANL iramadr,#data: anlc  ( bit-addr -- )  h# 82 asm8, asm8, asm8,  ;: anlc/ ( bit-addr -- )  h# b0 asm8, asm8, asm8,  ;: orl  ( n # | n | @Rn | Rn ] -- )   dup #  =  if  drop  h# 44 asm8,  immed,  exit  then   dup @R0  =  if  drop h# 46 asm8,  exit  then   dup @R1  =  if  drop h# 47 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# 48 + asm8,  exit  then   h# 45 asm8,  iram,;: orlr  ( iram -- )  h# 42 asm8,  asm8,  ;: orli  ( data iram -- )  h# 43 asm8,  asm8,  asm8,  ;  \ ANL iramadr,#data: orlc  ( bit-addr -- )  h# 72 asm8, asm8, asm8,  ;: orlc/ ( bit-addr -- )  h# a0 asm8, asm8, asm8,  ;: xrli  ( data iram -- )  h# 63 asm8,  asm8,  asm8,  ;  \ XRL iramadr,#data: xrl  ( n # | n | @Rn | Rn ] -- )   dup #  =  if  drop  h# 64 asm8,  immed,  exit  then   dup @R0  =  if  drop h# 66 asm8,  exit  then   dup @R1  =  if  drop h# 67 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# 68 + asm8,  exit  then   h# 65 asm8,  iram,;: mov  ( ? -- )   \ a,src   dup #  =  if  drop  h# 74 asm8,  immed,  exit  then   dup @R0  =  if  drop h# e6 asm8,  exit  then   dup @R1  =  if  drop h# e7 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# e8 + asm8,  exit  then   h# e5 asm8,  iram,;: movr  ( ? -- )  \ dst,a   dup @R0  =  if  drop h# f6 asm8,  exit  then   dup @R1  =  if  drop h# f7 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# f8 + asm8,  exit  then   h# f5 asm8,  iram,;: movc  ( bit -- )  h# a2 asm8,  asm8,  ;: movi  ( data ea -- )  \ ea,#data   dup @R0  =  if  drop h# 76 asm8,  immed,  exit  then   dup @R1  =  if  drop h# 77 asm8,  immed,  exit  then   dup R0 R7 between  if  R0 -  h# 78 + asm8,  immed, exit  then   h# 75 asm8,  iram,  immed,;: mov_to_iram  ( ea iram -- )  \ iram,ea   swap   dup @R0  =  if  drop h# 86 asm8,  iram,  exit  then   dup @R1  =  if  drop h# 87 asm8,  iram,  exit  then   dup R0 R7 between  if  R0 -  h# 88 + asm8,  iram, exit  then   h# 85 asm8,  iram,  iram,;: mov_from_iram  ( iram ea -- )  \ ea,iram   dup @R0  =  if  drop h# a6 asm8,  iram,  exit  then   dup @R1  =  if  drop h# a7 asm8,  iram,  exit  then   dup R0 R7 between  if  R0 -  h# a8 + asm8,  iram, exit  then   drop true abort" illegal addressing mode";: xchg  ( n | @Rn | Rn ] -- )   dup @R0  =  if  drop h# c6 asm8,  exit  then   dup @R1  =  if  drop h# c7 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# c8 + asm8,  exit  then   h# c5 asm8,  iram,;: dec  ( n | A | @Rn | Rn ] -- )   dup A =  if  drop   h# 14 asm8,  exit  then   dup @R0  =  if  drop h# 16 asm8,  exit  then   dup @R1  =  if  drop h# 17 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# 18 + asm8,  exit  then   h# 15 asm8,  iram,;: djnz  ( adr n | @Rn | Rn ] -- )   dup R0 R7 between  if  R0 -  h# d8 + asm8, rel,  exit  then   h# d5 asm8,  iram,  rel,;: inc  ( n | A | @Rn | Rn ] -- )   dup A =  if  drop   h# 04 asm8,  exit  then   dup @R0  =  if  drop h# 06 asm8,  exit  then   dup @R1  =  if  drop h# 07 asm8,  exit  then   dup R0 R7 between  if  R0 -  h# 08 + asm8,  exit  then   h# 05 asm8,  iram,;: orlr  ( iram -- )  h# 62 asm8,  asm8,  ;: orli  ( data iram -- )  h# 63 asm8,  asm8,  asm8,  ;  \ ANL iramadr,#data: cjne  ( adr n # | n | @Rn | Rn ] -- )   dup #  =  if  drop  h# b4 asm8, immed, rel,  exit  then   dup @R0  =  if  drop h# b6 asm8,  rel, exit  then   dup @R1  =  if  drop h# b7 asm8,  rel, exit  then   dup R0 R7 between  if  R0 -  h# b8 + asm8,  rel, exit  then   h# b5 asm8,  iram,  rel,;: cpl   ( bit -- )  h# b2 asm8, asm8,  ;: clr   ( bit -- )  h# c2 asm8, asm8,  ;: setb  ( bit -- )  h# d2 asm8, asm8,  ;: jc    ( reladdr -- )  h# 40 asm8, rel,  ;: jnc   ( reladdr -- )  h# 50 asm8, rel,  ;: jz    ( reladdr -- )  h# 60 asm8, rel,  ;: jnz   ( reladdr -- )  h# 70 asm8, rel,  ;: sjmp  ( reladdr -- )  h# 80 asm8, rel,  ;: jb    ( reladdr bit -- )  h# 20 asm8, asm8, rel,  ;: jbc   ( reladdr bit -- )  h# 10 asm8, asm8, rel,  ;: jnb   ( reladdr bit -- )  h# 30 asm8, asm8, rel,  ;: 1mi  create c, does> c@ asm8, ;h# d6 1mi xchd_a,@R0h# d7 1mi xchd_a,@R1h# 00 1mi noph# 22 1mi reth# 32 1mi retih# 03 1mi rrh# 13 1mi rrch# 23 1mi rlh# 33 1mi rlch# 73 1mi jmp@a+dptrh# a3 1mi incdptrh# b3 1mi cplch# c3 1mi clrch# d3 1mi setbch# 84 1mi divh# a4 1mi mulabh# c4 1mi swapah# d4 1mi dah# e4 1mi clrah# f4 1mi cplah# e0 1mi movx_a,@dptrh# e2 1mi movx_a,@r0h# e3 1mi movx_a,@r1h# f0 1mi movx_@dptr,ah# f2 1mi movx_@r0,ah# f3 1mi movx_@r1,ah# 83 1mi movc_a,@a+pch# 93 1mi movc_a,@a+dptr: ladr,  ( adr -- )  wbsplit asm8, asm8,  ;: ljmp  ( adr -- )  h# 02 asm8, ladr,  ;: lcall ( adr -- )  h# 12 asm8, ladr,  ;: push ( iram -- )  h# c0 asm8, iram,  ;: pop  ( iram -- )  h# d0 asm8, iram,  ;: xjmp  ( adr -- )\ Turn off this optimizations for now for simplicity\   dup here -  byte-offset?  if  sjmp  else  ljmp  then   ljmp;: xcall  ( adr -- )\ Turn off this optimizations for now for simplicity\   dup  here 2+  xor h# f800 and  ( adr page-different? )\   if  lcall  else  acall  then   ( adr )   lcall;: put-ljmp  ( to from -- )   >r   h# 12 r@ asm8!   ( to r: from )   wbsplit          ( to.lo to.hi r: from )   r@ 1+ asm8!      ( to.lo r: from )   r> 2+ asm8!      ( );hexh# 10 constant bit-set?&clr \ JBCh# 20 constant bit-clr?     \ JBh# 30 constant bit-set?     \ JNBh# 40 constant no-carry?    \ JCh# 50 constant carry?       \ JNCh# 60 constant 0<>          \ JZh# 70 constant 0=           \ JNZ: put-cond ( [ bit# ] cond -- )   dup asm8,                 \ Conditional branch   h# 40 <  if  asm8,  then  \ Include bit# if necessary;\ >mark must return the address of the opcode, not the address\ of the offset, in order for loclabel.fth to work.: >mark  ( -- from )  here  ;: >resolve  ( from -- )   dup asm8@ h# 40 <  if  2+  else  1+  then  \ Skip opcode [ and bit# ]   here  swap  rel!;: <mark  ( -- to )  here  ;: <resolve  ( to -- )  rel,  ;: but  ( mark1 mark1 -- mark2 mark1 )  swap  ;: yet  ( mark -- mark mark )  dup  ;\ Assemble DJNZ in either Rn or direct form: ,loop  ( to [ iram | reg ] -- )        dup R0 R7 between  if    ( to reg )      R0 -  h# d8 +  asm8,  ( to )      \ 2-byte Rn form   else                     ( to iram )      h# d5 asm8,  asm8,    ( to iram ) \ 3-byte direct form   then                     ( to )   <resolve;\ After we start redefining control structure words, we have to be\ careful not to use them with the expectation of their Forth meanings.: if     ( [ bit# ] cond -- from )  >mark >r   put-cond  0 asm8,  r>  ;: until  ( to [ bit# ] cond -- )  h# 10 xor  put-cond  here rel!  ;: then   ( from -- )        >resolve  ;: begin  ( -- to )          <mark   ;: ahead  ( -- from )        h# 80  if  ;               \ SJMP: else   ( from -- from' )  ahead  but  then  ;: again  ( to -- )          h# 80 asm8,  <resolve  ;   \ SJMP: while  ( to -- from to )  if  but  ;: repeat ( from to -- )     again  then  ;only forth also definitions\ If xxxx.1rrr bit is set, it is a regular form where the EA is R0..7\ If xxxx.0100 the EA is often #immed\ If xxxx.0101 the EA is often iram\ If xxxx.0110 the EA is always @R0\ If xxxx.0111 the EA is always @R1\  nop             0000.0000\  jbc bit reladr  0001.0000 bit reladr\  jb  bit reladr  0010.0000 bit reladr\  jnb bit reladr  0011.0000 bit reladr\  jc   reladr     0100.0000 reladr\  jnc  reladr     0101.0000 reladr\  jz   reladr     0110.0000 reladr\  jnz  reladr     0111.0000 reladr\  sjmp reladr     1000.0000 reladr\  movx_a,@dptr    1110.0000\  movx_@dptr,a    1111.0000\  acall           ppp1.0001 llll.llll\  ajmp            ppp0.0001 llll.llll\  orl c,/bit      1010.0000 n n\  anl c,/bit      1011.0000 n n\  push            1100.0000 iram\  pop             1101.0000 iram\  orl c,bit       0111.0010 n n\  anl c,bit       1000.0010 n n\  clr bit         1100.0010 bit\  setb bit        1101.0010 bit\  ljmp  adr       0000.0010 adr adr\  lcall adr       0001.0010 adr adr\  ret             0010.0010\  reti            0011.0010\  movx_a,@r0      1110.0010\  movx_@r0,a      1111.0010\  rr              0000.0011\  rrc             0001.0011\  rl              0010.0011\  rlc             0011.0011\  jmp@a+dptr      0111.0011\  movc_a,@a+pc    1000.0011\  movc_a,@a+dptr  1001.0011\  clrc            1100.0011\  setbc           1101.0011\  movx_a,@r1      1110.0011\  movx_@r1,a      1111.0011\  div             1000.0100  (shoehorned into mov iram,ea)\  mulab           1010.0100  (shoehorned into mov ea,iram)\  swap            1100.0100  (shoehorned into xchg)\  da              1101.0100  (shoehorned into djnz)\  clra            1110.0100  (shoehorned into mov a,ea)\  xchd a,@r0      1101.0110  (shoehorned into djnz)\  xchd a,@r1      1101.0111  (shoehorned into djnz)\  inc         0000.mmmm\  dec         0001.mmmm\  add         0010.mmmm\  addc        0011.mmmm\  orl         0100.mmmm\  anl         0101.mmmm\  xrl         0110.mmmm\  mov ea,#    0111.mmmm data\  mov iram,ea 1000.mmmm iram\  subb        1001.mmmm\  mov ea,iram 1010.mmmm iram\  cjne        1011.mmmm idata reladdr (cplc shoehorned at 3, cplbit at 2)\  xchg        1100.mmmm reladdr\  djnz        1101.mmmm reladdr   (da shoehorned at 4, xchd at 6,7)\  mov a,ea    1110.mmmm           (clr shoehorned at 4)\  mov ea,a    1111.mmmm           (cpla shoehorned at 4)\  cpl a       1111.0100\  undef       1010.0101 \ shoehorned into mov ea,iram (redundant with 85)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91国内精品野花午夜精品| 亚洲丝袜另类动漫二区| 色综合色综合色综合色综合色综合| 国内外成人在线| 久久国产成人午夜av影院| 经典三级一区二区| 丁香五精品蜜臀久久久久99网站| 丁香啪啪综合成人亚洲小说| 成人美女视频在线观看18| 91免费精品国自产拍在线不卡| 色猫猫国产区一区二在线视频| 91成人免费在线| 欧美一区日本一区韩国一区| 欧美精品一区二| 国产精品电影院| 亚洲免费在线观看| 偷拍亚洲欧洲综合| 国模无码大尺度一区二区三区| 国产91精品一区二区麻豆网站 | 国产一区二区成人久久免费影院 | 亚洲精品一区二区三区在线观看| 精品国产乱码久久久久久牛牛| 久久色在线观看| 成人欧美一区二区三区小说 | 亚洲一区在线视频| 免费观看一级欧美片| 国产精品一二三四区| 91免费视频观看| 欧美v国产在线一区二区三区| 国产精品另类一区| 三级亚洲高清视频| 国产a久久麻豆| 91精彩视频在线| 欧美一卡在线观看| 亚洲欧美日韩成人高清在线一区| 午夜精品久久久久久久99樱桃| 激情欧美日韩一区二区| 99热精品一区二区| 欧美大白屁股肥臀xxxxxx| 国产精品二三区| 麻豆精品在线播放| 欧美三级乱人伦电影| 国产偷国产偷精品高清尤物| 亚洲尤物视频在线| 国产白丝网站精品污在线入口| 欧美色手机在线观看| 久久久一区二区三区捆绑**| 亚洲国产aⅴ成人精品无吗| 懂色中文一区二区在线播放| 欧美一区二区三区在| 亚洲一区二区在线观看视频| 国产成人精品在线看| 日韩视频在线你懂得| 午夜精品爽啪视频| 91久久人澡人人添人人爽欧美 | av激情成人网| 久久精品免视看| 蜜桃视频免费观看一区| 欧美性猛交一区二区三区精品| 亚洲欧洲日韩av| 成人开心网精品视频| 久久综合久久综合久久| 久久精品国产色蜜蜜麻豆| 欧美日韩一级片在线观看| 亚洲精品日韩综合观看成人91| 国产精品一区二区在线观看不卡| 欧美精品一区二| 国产精品综合一区二区| 精品国产乱码久久| 国产永久精品大片wwwapp| 欧美大片一区二区三区| 日本免费在线视频不卡一不卡二 | 国产无人区一区二区三区| 久久成人免费网站| 久久综合久久综合亚洲| 国产在线不卡一卡二卡三卡四卡| 欧美xingq一区二区| 国产精品一二三四五| 国产精品区一区二区三区| 成人一区在线观看| 94-欧美-setu| 欧美日韩高清一区二区三区| 亚洲综合视频在线观看| 欧美中文字幕一区二区三区亚洲| 亚洲精品免费在线播放| 欧美系列在线观看| 日本不卡一区二区| 久久网站最新地址| 成人av免费在线| 亚洲精品国产第一综合99久久| 欧美日韩国产综合一区二区| 男男视频亚洲欧美| 久久亚洲春色中文字幕久久久| 成年人国产精品| 亚洲国产日韩一级| 2021国产精品久久精品| 白白色 亚洲乱淫| 亚洲成人资源在线| 久久综合国产精品| 91老师国产黑色丝袜在线| 亚洲va韩国va欧美va| 精品久久久久久最新网址| 成人国产在线观看| 日韩av网站免费在线| 国产欧美日韩亚州综合| 欧美揉bbbbb揉bbbbb| 国产一区二区三区在线看麻豆| 国产精品免费观看视频| 色爱区综合激月婷婷| 国产一区福利在线| 亚洲免费观看高清| 欧美va在线播放| 欧美性色欧美a在线播放| 国产成人午夜99999| 亚洲国产综合视频在线观看| 久久精品人人做人人爽人人| 欧美日韩视频第一区| 成人黄色片在线观看| 麻豆91免费观看| 亚洲国产精品人人做人人爽| 中文字幕欧美日韩一区| 在线综合视频播放| 色国产综合视频| 成人污污视频在线观看| 美腿丝袜一区二区三区| 亚洲高清免费视频| 综合分类小说区另类春色亚洲小说欧美| 日韩欧美久久久| 在线不卡中文字幕播放| 色狠狠av一区二区三区| av亚洲精华国产精华精华| 国产一区二区三区综合| 久久成人精品无人区| 青青草国产成人99久久| 亚洲不卡一区二区三区| 亚洲激情av在线| 综合婷婷亚洲小说| 中文字幕视频一区| 中文字幕欧美国产| 亚洲国产精品激情在线观看| 欧美精品一区二区三区高清aⅴ| eeuss鲁片一区二区三区在线看| 91首页免费视频| 国产一区二区不卡老阿姨| 日韩av网站免费在线| 日日夜夜免费精品视频| 亚洲午夜av在线| 亚洲一区二区成人在线观看| 亚洲激情成人在线| 一卡二卡三卡日韩欧美| 亚洲最快最全在线视频| 亚洲精选在线视频| 一区二区三区中文字幕电影 | 久久亚洲精精品中文字幕早川悠里| 欧美日韩一级二级三级| 欧美日韩一区二区三区高清| 欧美美女一区二区三区| 在线播放中文一区| 日韩精品一区在线观看| 亚洲精品在线观看视频| 国产午夜精品理论片a级大结局 | 欧美日本一道本| 欧美丰满少妇xxxxx高潮对白| 7799精品视频| www激情久久| 国产精品久久午夜夜伦鲁鲁| 亚洲免费伊人电影| 亚洲电影一区二区三区| 美女尤物国产一区| 国产成人亚洲精品狼色在线| 99在线精品免费| 欧美日韩高清影院| 久久久影院官网| 亚洲精品免费播放| 青青草一区二区三区| 国产成人免费视频 | 午夜精品一区二区三区免费视频 | heyzo一本久久综合| 欧美日韩久久一区二区| 欧美一区二区三区四区高清| 久久亚洲综合av| 1024成人网| 麻豆精品视频在线观看免费| 国产91精品欧美| 欧美高清视频不卡网| 中文久久乱码一区二区| 亚洲国产综合色| 丁香六月综合激情| 欧美一区二区三区系列电影| 国产精品麻豆网站| 美女脱光内衣内裤视频久久网站| 成人国产在线观看| 欧美成人高清电影在线| 亚洲专区一二三| 成人精品视频一区二区三区尤物| 欧美性做爰猛烈叫床潮| 欧美高清一级片在线观看| 日本不卡在线视频| 91国模大尺度私拍在线视频| 欧美韩国日本不卡|