Click here to load reader
Upload
solada
View
88
Download
1
Embed Size (px)
DESCRIPTION
第四章 数据传送和数据比较指令. 数据传送指令. 数据比较指令. 数据传送和数据比较指令有两个以上操作数. 要注意指令微分和非微分形式时用法的区别. 要注意这些指令的操作数的含义及其范围. 这些指令多数都有微分和非微分两种形式. 一、 数据传送指令. 单字传送指令 MOV. 数字 传送指令 MOVD. 块 传送指令 XFER. 单字 分配指令 DIST. 块 设置指令 BSET. 数据调用 指令 COLL. 位 传送指令 MOVB. 数据交换 指令 XCHG. MOV (21) S D. - PowerPoint PPT Presentation
Citation preview
MOVMOVDMOVBBSETXFERDISTXCHGCOLL
S D
ONSD OFFONSD 1. MOV(21)/ @MOV (21)
LD 25315MOV (21) #0198 HR00PLC0198HR00. MOV(1)MOV
DIFU0000 OFFONMOV MOV(2)LR00HR00
MOV300000 OFFONMOV LR00HR002
MOV(a)(c)MOV00000 OFFON(b ) MOVPLC
PLCHR00LR00 MOVMOV MOVMOV4
PLC0100200,CNT000 00001OFFON0200 20000000 ON CNT000100()20000000 00002 CNT000MOV5
2. XFER (70 )/ @ XFER(70 ) N BCD ON S D
3. BEST(71)/ @ BEST(71) S ONSStE St E
LD 00000 @MOV(21) #0100 HR00 TIM 000 HR00 AND TIM000 OUT 01000LD 00001@BSET(71) #0050 TIM 000 TIM 000
@BSETTIM000@BSETTIM000 00001OFF00000 OFFON MOV #0100HR00TIM 00010 10TIM000 ON 01000 ON
TIM000@BSET @BSET0050TIM000TIM0000050TIM000008900001 ONTIM00000500.110000
HR00TIM0000100 BSET BSETBSET23HR00BSETTIM0000050
MOVBSET MOVBSET TIM / CNTMOV BSETTIM / CNT BSETTIM/CNTTIM/CNT MOVTC MOV TIM/CNT
4. MOVB (82)/ @ MOVB (82)bit00~bit07Sbit08~bit15DS D C (BCD) ONCSD C
LD 00005 @MOV B (82) HR00 #1500 200 C HR00 1000 1000 1000 010120015ON 1 bit00~bit07Sbit08~bit15DPLCHR0000 20015
5. MOVD (83)/ @ MOVD (83)ONCSD
S D C C (BCD) SD
C=#0030MOVD(1)CS0 4 D0 1 2 3 03 0 1 22 3 0 1
C=#0023MOVD(2)CS3 3 D0
C=#0123MOVD(3)CS3 3 D1
6. DIST(80)/ @ DIST (80)S DBS C(BCD) ONCC3
1. Cbit12~ bit158 C (BCD) ONSDBS + C
2. Cbit12~ bit15= 9SDBS + +1 1ONC3DBS
SBs D C(BCD) 7. COLL (81)/ @ COLL (81)ONCC3
1. C=0000~6655 C (BCD) ONSBS + C D
2. () C=9000~9999 SBSD1 C=8000~8999 SBSD1
SBs=DM0000 C=#9007 D=200COLLC=#9007 DM0001~DM00071
SBs=DM0000 C=#8007 D=200COLLC=#8007 DM0001~DM00071
CMPTCMPCMPLBCMP
1. CMP C1 1 C2 2ONC1 C2 C1 > C225505 ON C1 = C225506 ON C1 < C225507 ON
CMP(1)LD 00000TIM 000 #0030CMP(20) TIM000 #0200AND 25505OUT 20000AND 25506OUT 20001AND 25507OUT 20002LD TIM000OUT 20003
CMPTIM000 #020000000ONTIM000CMPTIM00003000.11
CMP TIM000#020025505 ON 20000 ONTIM000# 020025506 ON 20001 ONTIM000# 020025507 ON 20002 ONTIM000 20002 20003 ON
CMP (2)CMPCMP00000 OFFONDIFU(13)
2. BCMPCD: CB: R:ONCDCDRON
BCMPHR 0514 ON
3. TCMPCD: TB: R: ONCDCDRON
TCMPHR 1902 ON
1. (2) (3) (1) MOVBSETTC
2. (1) //25505~25507 25505~25507 (2)
1. SFT (10)
ROFF SPIN St EIN:R:SP:
SFT StERONStE
SFT LD 00000 LD 25502 LD 00001 OR 25315 SFT(10) 200 200 LD 20003 OUT 01000 SFT 200200
20000ON2001 2 3 4 5 6 7
25315 00000 2550200000ON2000000001 ON 200420003 ON01000 ON00001ON20003 OFF01000 OFF
2. SFTR(84) C: St : E :ON CSt ~E
C 1() 0()1 St~ECY0C
OFFCbit151StECYCbit 150Cbit 12 Cbit 121 StECbit13Stbit 0Ebit15 CY Cbit 120EStCbit13Ebit15Stbit0CY
LD 00000OUT 20012LD 00001OUT 20013LD 00002DIFU (13) 20100LD 20100OUT 20014LD 00003OUT 20015LD 00004SFTR (84) 200 LR10 LR11
00004ON200bit12bit15000000000300001ON200131100001OFF200130000002 OFFON20014ON
0000200002ON00003ON20015ONLR10LR11CY000003OFF 20015 OFF20012
20012 ON00002OFFON LR10LR1120013LR1000 LR1115CY
20012 OFF00002OFF ONLR10LR1120013LR1115 LR1000CY
3. /SLD (25)/ ASR(26) / , St EONSt~E1
4. /ASL (25)/ ASR(26) / ,ASL(25) Ch ChONCh1CY
5. /ROL(27)/ROR(28) / ,ROL(27) ChChONChCY1
ROL00000 OFFON ROLHR00 MOVHR00010
HR00CY= 0 ROLCYHR00 010
ROL/RORENDCY ROL CY CY
CY
CYCY=125504 ONHR0100 ONHR0100 ON STC CY1ROLCY
6. WSFT(16)/ @WSFT(16) St EONSt~E1
7. ASFT /@ASFTC St E C0 10 10 1ON0000
ASFT 0000ASFT000000000000
6 0 1 1 0 ASFT C=#6000
1. 2. CYCY 3.
BCD BCD416 164 ASCII
BCD /@BCD BIN/@BINBIN/@BINS: R: ON,SBCDR 1. BCDBIN/@BIN
4321 0100000011100001LD 00000@ MOV (21) # 4321 200@ BIN (23) 200 DM0000IR200BCD4321 00000 OFFON
2. 416 MLPX/@ MLPX S C R CS0
ONCSR C ()015 ONOFF4
123C= # 003041C= # 0023 0433
MLPXLD 00000@ MOV (21) # 78F5 200@ MLPX (76) 200 # 0013 HR 00C=#00132HR00HR013022 IR20078F5
78F53011177HR00bit0710010155HR01bit 051
C=#00233313HR02
4C=#0023HR18 C=#0042 MLPX
3. 16 4 DMPX/@ DMPX S C R CR0
ONCSR C ON RC
DMPXLD 00000@ MOV (21) # 0013 220@ DMPX (77) HR 00 DM0000 220C=#0013R3 2HR00HR01
HR00A8E71010 1000 1110 0111HR00115FFDM00003HR0101BF0000 0001 1011 1111HR011888 DM00000
123C= # 003041C= # 0031 4
C=#0023(3)3HR023DM00001
C=#0023HR18 C=#0042 DMPX 4
4. SDEC/@ SDEC SBCD C R CS0R88 08 18
C= # 0 0 3 004R80
C= # 0 1 3 334R80 4
ONCSR SDEC RCR88 Rbit0006bit0814abcdefg bit07bit15 bit0006bit08141 bit0006bit08141
SDECLD 00000@ MOV (21) # 1673 HR00@ SDEC(78) HR00 # 0013 HR01C=#0013R2R830 HR001673
HR001673BCD31 bc 1 8HR0180000 0110bit7003 a b cdg18HR0180100 1111bit150
1 6 7 3
C=#011328HR018HR028 4 C=#0023HR18 C=#0042
5. ASCIIASC/@ ASC S C R CS012R88 08 18
ONCSASCIIR ASCII1bit07bit151 bit0006bit0814bit07bit15 bit07bit150 ASCII1bit07bit151
CR88 Cbit0811 C bit07bit15ASCII
ASCC= # 0 0 1 112R8
C= # 1 0 1 002R8
C= # 2 0 1 002R8
C= # 2 1 1 002R8
1. /2. (DMPX)(MLPX)3. (ASC)a~g5. 4. ASCII(ASC)bit07bit15
CYCY BCD /
1. 00000TIM001 ON(): CLCCY; ADDDM0010 (0300)#0300; CMP#0900DM0010 ; DM0010#0300TIM00030
#0300DM0010TIM00030DM0010 #0900MOV #0300DM0010TIM000 TIM001TIM00101000ON TIM00001000 OFF 01000 ON6001000 OFF 3030(90)
01000OFFONTIM00030sTIM00160sTIM00060sTIM00160sTIM00090sTIM00160s
2. 00000ON: CLCCY; SUBHR00 DM0000CYHR01CY=125504 ONCLCCYCY=025504 OFFMOVHR020CY
HR01 ,00000 ON,CYSUB# 0 HR01 HR01HR021 (CY)
1000 2000 01000 + (10000 2000) = 9000 1 0000 9000 0 0000 + (10000 9000) = 1000 1HR001000DM00002000
3. / CY 00000ONBSETDM0000~ DM0004CMPDM0000#000400001ONINCDM00001
DM0000# 000421000ONBSETDM0000~ DM0004 MULDM0000#0004DM0001~DM0002DIVDM0001~DM0002#0002DM0003DM0004
00001 ON4DM0000~DM00041 0001 0004 0000 0002 00002 0002 0008 0000 0004 00003 0003 0012 0000 0006 00004 0004 0016 0000 0008 0000000015ONDM00001
1BSETDM0000DM0004200001ON00000OFF@MOV#00FA250HR002508 1000/50
@CLCCY@MLBHR00#000807D0(2000)DM00000000 DM0001@SBBDM0000#03E81000#03E8DM0002@DVBDM0002#0032(50)#0014(20)DM0003#0000DM0004
/
123HR00bit0bit3bit4bit7bit10#0499HR00 #04990000 0100 1001 1001
1. (2) /(3) (1) //CYCY(4) 3. 2.
ONN SBNNRET 1.
2. (1) SBS(2) SBN/RET(3) END(4) (5) 16
MOV2200001(22000ON) 3. 1 25502 (1) 00100OFF KEEP,01100(25502) 00100ONSFT22000ON00100 ON(2) 00100ONSBS, 005:
25502 MOV220010:SBS@SBS,? 22007ON,220?220? ,KEEP00100ON
2
PLC#0004200CNT000(1)00000ON CNT000()200,(2) CNT000 ON ( ON ): 00201000ONTIM0012s
(1)ADD 200#0002; 0006(2)CMP 200#0010; (3)200= #0010#00042000004(4)
3 CMP(20) DM0000 # 000025506 21000 21000 SBS(91) 011 RET(93) SBN(92) 011 21001 25313 RET(93) 25313 END(01) 01025506 ON21000ON01121001ON011,010010BCD1
01025506 OFFCNT000ON
ONI1~ I1+3SR232~SR235O1~ O1+3SR236~SR239N NSR236~SR239O1~ O1+3MCRONSBN/RETEND16
040
12
(X+10)DM0000Y=(X+10)/XYDM0010Y#0006 2
3
1. SBN/RETEND 2. SBS 3. / 4.