0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动

完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>

3天内不再提示

51单片机的汇编程序库

Rob_51b 来源:单片机教程网 作者:单片机教程网 2020-12-06 17:31 次阅读

下面是一些51单片机汇编语言编程常用到的子程序代码

1、片内RAM初始化子程序

2、片外RAM初始化子程序

3、片外RAM初始化子程序(双字节个单元)

4、内部RAM数据复制程序

5、外部RAM数据复制程序

6、外部RAM数据复制程序

7、外部RAM数据复制到内部RAM程序

8、限幅滤波程序

9、中位值滤波程序

10、N点算术平均滤波

11、N点加权平均滤波

12、一阶加权滞后滤波程序

13、双字节取补程序

14、N节取补程序

15、双字节无符号数加法程序

16、N字节无符号数加法程序

17、双字节无符号数减法程序

18、N字节无符号数减法程序

19、单字节无符号数乘法程序

20、单字节无符号数乘法程序

21、单字节无符号数乘法程序

22、双字节无符号数乘法程序

23、双字节无符号数乘法程序

24、N字节无符号数乘法程序

25、单字节无符号除法程序

26、单字节无符号除法程序

27、双字节无符号除法程序

28、N字节无符号除法程序(组合)

29、N字节无符号除法程序

30、N字节数据左移程序

31、原码有符号双字节减法程序

32、原码有符号双字节加法程序

33、原码有符号双字节乘法程序

34、原码有符号双字节除法程序

35、单字节顺序查找程序

36、单字节顺序查找程序

37、双字节字符串顺序查找程序

38、双字节字符串顺序查找程序

39、N字节字符串顺序查找程序

40、单字节最值查找程序

41、浮点数顺序查找程序

42、浮点数最值查找程序

43、单字节折半查找程序

;片内RAM初始化子程序

IBCLR :MOV A,R0

MOV R1,A

CLR A

IBC1 :MOV @R1,A

INC R1

DJNZ R7,IBC1

RET

;片外RAM初始化子程序

EBCLR1 :MOV A,ADDPL

MOV DPL,A

MOV A,ADDPH

MOV DPH,A

CLR C

EBC11 :MOVX @DPTR,A

INC DPTR

DJNZ R7,EBC11

RET

;片外RAM初始化子程序(双字节个单元)

EBCLR2 :MOV A,ADDPL

MOV DPL,A

MOV A,ADDPH

MOV DPH,A

MOV A,R7

JZ EBC21

INC R6

EBC21 :CLR A

MOVX @DPTR,A

INC DPTR

DJNZ R7,EBC21

DJNZ R6,EBC21

RET

;内部RAM数据复制程序

;入口 :R0,R7

;占用资源:A

;堆栈需求:2字节

;出口 :R1

IBMOV :MOV A,R0

ADD A,R7

MOV R0,A

MOV A,R1

ADD A,R7

MOV R1,A

IBM1 :DEC R0

DEC R1

MOV A,@R0

MOV @R1,A

DJNZ R7,IBM1

RET

;外部RAM数据复制程序

;入口 :ADDPH,ADDPL,R7

;占用资源:ACC

;堆栈需求:2字节

;出口 :R0,R1

EBMOV1 :MOV A,ADDPL

ADD A,R7

MOV DPL,A

CLR A

ADDC A,ADDPH

MOV DPH,A

MOV A,R7

ADD A,R1

XCH A,R0

ADDC A,#00H

MOV P2,A

EBM11 :DEC R0

CJNE R0,#0FFH,EBM12

DEC P2

EBM12 :DEC DPL

MOV A,DPL

CJNE A,#0FFH,EBM13

DEC DPH

EBM13 :MOVX A,@R0

MOVX @DPTR,A

DJNZ R7,EBM11

RET

;外部RAM数据复制程序

;入口 :ADDPH,ADDPL,R6,R7

;占用资源:ACC

;堆栈需求:2字节

;出口 :R0,R1

EBMOV2 :MOV A,ADDPL

ADD A,R7

MOV DPL,A

MOV A,R6

ADDC A,ADDPH

MOV DPH,A

MOV A,R7

ADD A,R1

XCH A,R0

ADDC A,R6

MOV P2,A

MOV A,R7

JZ EBM21

INC R6

EBM21 :DEC R0

CJNE R0,#0FFH,EBM22

DEC P2

EBM22 :DEC DPL

MOV A,DPL

CJNE A,#0FFH,EBM23

DEC DPH

EBM23 :MOVX A,@R0

MOVX @DPTR,A

DJNZ R7,EBM21

DJNZ R6,EBM21

RET

;外部RAM数据复制到内部RAM程序

;入口 :ADDPH,ADDPL,R7

;占用资源:ACC

;堆栈需求:2字节

;出口 :R0

ITEMOV :MOV A,ADDPL

ADD A,R7

MOV DPL,A

MOV A,ADDPH

ADDC A,#00H

MOV DPH,A

MOV A,R0

ADD A,R7

MOV R0,A

ITEM1 :DEC R0

DEC DPL

MOV A,DPL

CJNE A,#0FFH,ITEM2

DEC DPH

ITEM2 :MOVX A,@DPTR

MOV @R0,A

DJNZ R7,ITEM1

RET

;限幅滤波程序

;入口 :A,SDAT,DELTY

;占用资源:B

;堆栈需求:2字节

;出口 :A

JUGFILT :MOV B,A

CLR C

SUBB A,SDAT

JNC JUGFT1

CPL A

INC A

JUGFT1 :SETB A

SUBB A,#DELTY

JNC JUGFT3

MOV A,SDAT

RET

JUGFT3 :MOV A,B

MOV SDAT,A

RET

;中位值滤波程序

;入口 :ADDPH,ADDPL,N

;占用资源:ESELSORT

;堆栈需求:4字节

;出口 :A

MEDFILT :LCALL ESELSORT

MOV A,N

CLR C

RRC A

ADD A,ADDPL

MOV DPL,A

MOV A,ADDPH

MOV DPH,A

JNC MEDFT1

INC DPH

MEDFT1 :MOVX A,@DPTR

RET

;N点算术平均滤波

;入口 :ADDPH,ADDPL,N

;占用资源:B,R3,R4

;堆栈需求:2字节

;出口 :A

AVFILT :MOV A,ADDPL

MOV DPL,A

MOV A,ADDPH

MOV DPH,A

CLR A

MOV R3,A

MOV R4,A

MOV R7,N

AVFT1 :MOVX A,@DPTR

INC DPTR

ADD A,R4

MOV R4,A

JNC AVFT2

INC R3

AVFT2 :DJNZ R7,AVFT1

MOV R7,N

MOV R2,#00H

LCALL NDIV31

MOV A,R4

RET

;N点加权平均滤波

;入口 :ADDPH,ADDPL,N

;占用资源:B,R3,R4

;堆栈需求:2字节

;出口 :A

QAVFILT :CLR A

MOV R3,A

MOV R4,A

MOV R7,N

MOV P2,ADDPH

MOV R1,ADDPL

MOV DPTR,#QAVTAB

QAVFT1 :MOVC A,@A+DPTR

MOV B,A

MOVX A,@R1

INC DPTR

INC R1

MUL AB

ADD A,R4

MOV R4,A

MOV A,B

ADDC A,R3

MOV R3,A

DJNZ R7,QAVFT1

MOV A,R4

JNB ACC.7,QAVFT2

INC R3

QAVFT2 :MOV A,R3

RET

QAVTAB :DB

;一阶加权滞后滤波程序

;入口 :A,DELTY

;占用资源:B,R3,R4

;堆栈需求:2字节

;出口 :A

BQFILT :MOV B,A

CLR A

MOV DPTR,#ABTAB

MOVC A,@A+DPTR

MUL AB

MOV R4,A

MOV R3,B

MOV A,#01H

MOVC A,@A+DPTR

MOV B,DELTY

MUL AB

ADD A,R4

MOV R4,A

MOV A,B

ADDC A,R3

MOV R3,A

MOV A,R4

JNB ACC.7,FT1

INC R3

FT1 :MOV A,R3

MOV DELTY,A

RET

BQTAB :DB 80H,80H

;双字节取补程序 /(R3R4)=(R3R4)

;入口 :R3,R4

;占用资源:ACC

;堆栈需求:2字节

;出口 :R3,R4

CMPT :MOV A,R4

CPL A

ADD A,#01H

MOV R4,A

MOV A,R3

CPL A

ADDC A,#00H

MOV R3,A

RET

;N节取补程序 /([R0])=([R0])

;入口 :R0,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R0

NCMPTN :MOV B,R0

SETB C

NCPT1 :MOV A,@R0

CPL A

ADDC A,#00H

MOV @R0,A

INC R0

DJNZ R7,NCPT1

MOV R0,B

RET

;双字节无符号数加法程序 (R3R4+R6R7)=(R3R4)

;入口 :R3,R4,R6,R7

;占用资源:ACC

;堆栈需求:2字节

;出口 :R3,R4,CF

NADD :MOV A,R4

ADD A,R7

MOV R4,A

MOV A,R3

ADDC A,R6

MOV R3,A

RET

;N字节无符号数加法程序 ([R0]+[R1])=([R0])

;入口 :R0,R1,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R0,CF

NADDN :MOV B,R0

CLR C

NADN1 :MOV A,@R0

ADDC A,@R1

MOV @R0,A

INC R0

INC R1

DJNZ R7,NADN1

MOV R0,B

RET

;双字节无符号数减法程序 (R3R4-R6R7)=(R3R4)

;入口 :R3,R4,R6,R7

;占用资源:ACC

;堆栈需求:2字节

;出口 :R3,R4

NSUB :MOV A,R4

CLR C

SUBB A,R7

MOV R4,A

MOV A,R3

SUBB A,R6

MOV R3,A

RET

;N字节无符号数减法程序 ([R0]-[R1])=([R0])

;入口 :R0,R1,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R0,CF

NSUBN :MOV B,R0

MOV R7,N

CLR C

NSUBN1 :MOV A,@R0

SUBB A,@R1

MOV @R0,A

INC R0

INC R1

DJNZ R7,NSUBN1

MOV R0,B

RET

;单字节无符号数乘法程序 (R3R4*R7)=(R2R3R4)

;入口 :R3,R4,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R2,R3,R4

NMUL21 :MOV A,R4

MOV B,R7

MUL AB

MOV R4,A

MOV A,B

XCH A,R3

MOV B,R7

MUL AB

ADD A,R3

MOV R3,A

CLR A

ADDC A,B

MOV R2,A

CLR OV

RET

;单字节无符号数乘法程序 (R2R3R4*R7)=(R5R2R3R4)

;入口 :R2,R3,R4,R6,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R5,R2,R3,R4

NMUL31 :MOV A,R4

MOV B,R7

MUL AB

MOV R4,A

MOV A,B

XCH A,R3

MOV B,R7

MUL AB

ADD A,R3

MOV R3,A

CLR A

ADDC A,B

XCH A,R2

MOV B,R7

MUL AB

ADD A,R2

MOV R2,A

CLR A

ADDC A,B

MOV R5,A

CLR OV

RET

;单字节无符号数乘法程序 (R5R2R3R4*R7)=(R7R5R2R3R4)

;入口 :R5,R2,R3,R4,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R7,R5,R2,R3,R4

NMUL41 :MOV A,R4

MOV B,R7

MUL AB

MOV R4,A

MOV A,B

XCH A,R3

MOV B,R7

MUL AB

ADD A,R3

MOV R3,A

CLR A

ADDC A,B

XCH A,R2

MOV B,R7

MUL AB

ADD A,R2

MOV R2,A

CLR A

ADDC A,B

XCH A,R5

MOV B,R7

MUL AB

ADD A,R5

MOV R5,A

CLR A

ADDC A,B

MOV R7,A

CLR OV

RET

;双字节无符号数乘法程序 (R3R4*R6R7)=(R5R2R3R4)

;入口 :R3,R4,R6,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R5,R2,R3,R4

NMUL22 :MOV A,R4

MOV B,R7

MUL AB

XCH A,R4

MOV R5,B

MOV B,R6

MUL AB

ADD A,R5

MOV R5,A

CLR A

ADDC A,B

MOV R2,A

MOV A,R3

MOV B,R7

MUL AB

ADD A,R5

MOV R5,A

MOV A,B

ADDC A,R2

MOV R2,A

CLR A

ADDC A,#00H

XCH A,R3

MOV B,R6

MUL AB

ADD A,R2

MOV R2,A

MOV A,B

ADDC A,R3

XCH A,R5

MOV R3,A

CLR OV

RET

;双字节无符号数乘法程序 (R2R3R4*R6R7)=(R1R5R2R3R4)

;入口 :R2,R3,R4,R6,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R1,R5,R2,R3,R4

NMUL32 :MOV A,R4

MOV B,R7

MUL AB

XCH A,R4

MOV R5,B

MOV B,R6

MUL AB

ADD A,R5

MOV R5,A

CLR A

ADDC A,B

MOV R1,A

MOV A,R3

MOV B,R7

MUL AB

ADD A,R5

MOV R5,A

MOV A,B

ADDC A,R1

MOV R1,A

CLR A

ADDC A,#00H

XCH A,R3

MOV B,R6

MUL AB

ADD A,R1

MOV R1,A

MOV A,B

ADDC A,R3

XCH A,R5

MOV R3,A

MOV A,R2

MOV B,R7

MUL AB

ADD A,R1

MOV R1,A

MOV A,B

ADDC A,R5

MOV R5,A

CLR A

ADDC A,#00H

XCH A,R2

MOV B,R6

MUL AB

ADD A,R5

MOV R5,A

MOV A,B

ADDC A,R2

XCH A,R1

MOV R2,A

CLR OV

RET

;N字节无符号数乘法程序 ([R0]*[R1])=([R0])

;入口 :R0,R1,M,N

;占用资源:ACC,B,R2,R5,R6,R7,NCNT

;堆栈需求:2字节

;出口 :R0

NMULMN :MOV A,M

ADD A,R0

MOV R5,A

XCH A,R1

XCH A,R5

ADD A,N

XCH A,R0

MOV R6,A

MOV B,M

MOV NCNT,B

NMLMN1 :DEC R0

DEC R1

CLR A

XCH A,@R1

MOV @R0,A

DJNZ NCNT,NMLMN1

MOV NCNT,B

NMLMN2 :CLR A

XCH A,@R0

MOV R2,A

MOV A,R6

MOV R0,A

MOV A,R5

MOV R1,A

MOV R7,N

CLR C

NMLMN3 :MOV A,R2

MOV B,@R1

INC R1

MUL AB

ADDC A,@R0

MOV @R0,A

INC R0

MOV A,B

ADDC A,@R0

MOV @R0,A

DJNZ R7,NMLMN3

INC R0

INC R6

DJNZ NCNT,NMLMN2

MOV A,R0

CLR C

SUBB A,M

SUBB A,N

MOV R0,A

RET

;单字节无符号除法程序 (R2R3R4/R7)=(R2)R3R4 余数R7

;入口 :R2,R3,R4,R7

;占用资源:ACC,B,F0

;堆栈需求:3字节

;出口 :(R2),R3,R4,R7,OV

NDIV31 :MOV A,R2

MOV B,R7

DIV AB

PUSH A

MOV R2,B

MOV B,#10H

NDV311 :CLR C

MOV A,R4

RLC A

MOV R4,A

MOV A,R3

RLC A

MOV R3,A

MOV A,R2

RLC A

MOV R2,A

MOV F0,C

CLR C

SUBB A,R7

JB F0,NDV312

JC NDV313

NDV312 :MOV R2,A

INC R4

NDV313 :DJNZ B,NDV311

POP A

CLR OV

JZ NDV314

SETB OV

NDV314 :XCH A,R2

MOV R7,A

RET

;单字节无符号除法程序 (R5R2R3R4/R7)=(R5)R2R3R4 余数R7

;入口 :R2,R3,R4,R7

;占用资源:ACC,B,F0

;堆栈需求:3字节

;出口 :(R5),R2,R3,R4,R7,OV

NDIV41 :MOV A,R5

MOV B,R7

DIV AB

PUSH A

MOV R5,B

MOV B,#18H

NDV411 :CLR C

MOV A,R4

RLC A

MOV R4,A

MOV A,R3

RLC A

MOV R3,A

MOV A,R2

RLC A

MOV R2,A

MOV A,R5

RLC A

MOV R5,A

MOV F0,C

CLR C

SUBB A,R7

JB F0,NDV412

JC NDV413

NDV412 :MOV R5,A

INC R4

NDV413 :DJNZ B,NDV411

POP A

CLR OV

JZ NDV414

SETB OV

NDV414 :XCH A,R5

MOV R7,A

RET

;双字节无符号除法程序 (R5R2R3R4/R6R7)=(R2)R3R4 余数R6R7

;入口 :R5,R2,R3,R4,R6,R7

;占用资源:ACC,B,F0

;堆栈需求:4字节

;出口 :(R2),R3,R4,R6,R7,OV

NDIV42 :MOV A,R1

PUSH A

MOV B,#00H

NDV421 :MOV A,R2

CLR C

SUBB A,R7

MOV R1,A

MOV A,R5

SUBB A,R6

JC NDV422

MOV R5,A

MOV A,R1

MOV R2,A

INC B

SJMP NDV421

NDV422 :PUSH B

MOV B,#10H

NDV423 :CLR C

MOV A,R4

RLC A

MOV R4,A

MOV A,R3

RLC A

MOV R3,A

MOV A,R2

RLC A

MOV R2,A

XCH A,R5

RLC A

XCH A,R5

MOV F0,C

CLR C

SUBB A,R7

MOV R1,A

MOV A,R5

SUBB A,R6

JB F0,NCV424

JC NDV425

NCV424 :MOV R5,A

MOV A,R1

MOV R2,A

INC R4

NDV425 :DJNZ B,NDV423

POP A

CLR OV

JNZ NDV426

SETB OV

NDV426 :XCH A,R2

MOV R7,A

MOV A,R5

MOV R6,A

POP A

MOV R1,A

RET

;N字节无符号除法程序(组合) ([R0]/[R1])=([R0])

;入口 :R0,R1,M,N

;占用资源:ACC,R2,R3,R4,R5,R7,NCNT,F0,NADDN,NSUBBN,NRLCN

;堆栈需求:4字节

;出口 :R0

;NDIVMN :MOV A,M

CLR C

SUBB A,N

MOV NCNT,A

ADD A,R0

MOV R4,A

XCH A,R0

MOV R3,A

MOV A,R1

MOV R5,A

MOV R2,#00H

NDVMN1 :MOV R7,N

LCALL NSUBN

MOV A,R5

MOV R1,A

JC NDVMN2

INC R2

SJMP NDVMN1

NDVMN2 :MOV R7,N

LCALL NADDN

MOV A,NCNT

SWAP A

RR A

MOV NCNT,A

NDVMN3 :MOV A,R3

MOV R0,A

MOV R7,M

LCALL NRLCN

MOV F0,C

MOV A,R4

MOV R0,A

MOV A,R5

MOV R1,A

MOV R7,N

LCALL NSUBN

JB F0,NDVMN4

JC NDVMN5

NDVMN4 :MOV A,R3

MOV R0,A

INC @R0

SJMP NDVMN6

NDVMN5 :MOV A,R5

MOV R1,A

MOV R7,N

LCALL NADDN

NDVMN6 :DJNZ NCNT,NDVMN3

MOV A,R4

MOV R1,A

MOV A,R2

MOV @R1,A

MOV A,R3

MOV R0,A

RET

;N字节无符号除法程序(集成) ([R0]/R[1])=([R0])

;入口 :R0,R1,M,N

;占用资源:ACC,R2,R3,R4,R5,R7,F0

;堆栈需求:2字节

;出口 :R0

NDIVMN :MOV A,M

CLR C

SUBB A,N

MOV B,A

ADD A,R0

MOV R4,A

XCH A,R0

MOV R3,A

MOV A,R1

MOV R5,A

MOV R2,#00H

NDVMN1 :MOV R7,N

CLR C

NDVMN2 :MOV A,@R0

SUBB A,@R1

MOV @R0,A

INC R0

INC R1

DJNZ R7,NDVMN2

MOV A,R4

MOV R0,A

MOV A,R5

MOV R1,A

JC NDVMN3

INC R2

SJMP NDVMN1

NDVMN3 :MOV R7,N

CLR C

NDVMN4 :MOV A,@R0

ADDC A,@R1

MOV @R0,A

INC R0

INC R1

DJNZ R7,NDVMN4

MOV A,#08H

MUL AB

MOV B,A

NDVMN5 :MOV A,R3

MOV R0,A

MOV R7,M

CLR C

NDVMN6 :MOV A,@R0

RLC A

MOV @R0,A

INC R0

DJNZ R7,NDVMN6

MOV F0,C

MOV A,R4

MOV R0,A

MOV A,R5

MOV R1,A

MOV R7,N

CLR C

NDVMN7 :MOV A,@R0

SUBB A,@R1

MOV @R0,A

INC R0

INC R1

DJNZ R7,NDVMN7

JB F0,NDVMNB

JC NDVMN8

NDVMNB :MOV A,R3

MOV R0,A

INC @R0

SJMP NDVMNA

NDVMN8 :MOV R7,N

MOV A,R4

MOV R0,A

MOV A,R5

MOV R1,A

CLR C

NDVMN9 :MOV A,@R0

ADDC A,@R1

MOV @R0,A

INC R0

INC R1

DJNZ R7,NDVMN9

NDVMNA :DJNZ B,NDVMN5

MOV A,M

CLR C

SUBB A,N

ADD A,R3

MOV R1,A

MOV A,R2

MOV @R1,A

MOV A,R3

MOV R0,A

RET

;N字节数据左移程序 RLC([R0])=(CF[R0])

;入口 :R0,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R0,CF

NRLCN :MOV B,R0

CLR C

NRLN1 :MOV A,@R0

RLC A

MOV @R0,A

INC R0

DJNZ R7,NRLN1

MOV R0,B

RET

;原码有符号双字节减法程序 (R3R4-R6R7)=R3R4

;入口 :R3,R4,R6,R7

;占用资源:ACC,DADD

;堆栈需求:6字节

;出口 :R3,R4,OV

DSUB :MOV A,R6

CPL ACC.7

MOV R6,A

LCALL DADD

RET

;原码有符号双字节加法程序 (R3R4+R6R7)=R3R4

;入口 :R3,R4,R6,R7

;占用资源:ACC,SR0,NADD,NSUB,CMPT

;堆栈需求:4字节

;出口 :R3,R4,OV

DADD :MOV A,R3

MOV C,ACC.7

MOV SR0,C

XRL A,R6

MOV C,ACC.7

MOV A,R3

CLR ACC.7

MOV R3,A

MOV A,R6

CLR ACC.7

MOV R6,A

JC DAB2

LCALL NADD

MOV A,R3

JB ACC.7,DABE

DAB1 :MOV C,SR0

MOV ACC.7,C

MOV R3,A

CLR OV

RET

DABE :SETB OV

RET

DAB2 :LCALL NSUB

MOV A,R3

JNB ACC.7,DAB1

LCALL CMPT

CPL SR0

SJMP DAB1

;原码有符号双字节乘法程序 (R3R4*R6R7)=(R5R2R3R4)

;入口 :R3,R4,R6,R7

;占用资源:ACC,SR0,NMUL22

;堆栈需求:4字节

;出口 :R5,R2,R3,R4

IMUL :MOV A,R3

XRL A,R6

MOV C,ACC.7

MOV SR0,C

MOV A,R3

CLR ACC.7

MOV R3,A

MOV A,R6

CLR ACC.7

MOV R6,A

LCALL NMUL22

MOV A,R5

MOV C,SR0

MOV ACC.7,C

MOV R5,A

RET

;原码有符号双字节除法程序 (R5R2R3R4/R6R7)=(R3R4) 余数(R6R7)

;入口 :R5,R2,R3,R4

;占用资源:ACC,SR0,NDIV42

;堆栈需求:6字节

;出口 :R3,R4,R6,R7,OV

IDIV :MOV A,R5

XRL A,R6

MOV C,ACC.7

MOV SR0,C

MOV A,R5

CLR ACC.7

MOV R5,A

MOV A,R6

CLR ACC.7

MOV R6,A

LCALL NDIV42

MOV A,R3

JB ACC.7,IDIVE

JB OV,IDIVE

MOV C,SR0

MOV ACC.7,C

MOV R3,A

RET

IDIVE :SETB OV

RET

;单字节顺序查找程序

;入口 :R0,R1,A,R7

;占用资源:B

;堆栈需求:2字节

;出口 :R0,R1,A

FINDB1 :MOV B,A

MOV DPL,R1

MOV DPH,R0

FINDB11 :MOVX A,@DPTR

CJNE A,B,FINDB12

MOV R1,DPL

MOV R0,DPH

CLR A

RET

FINDB12 :INC DPTR

DJNZ R7,FINDB11

MOV A,#0FFH

RET

;单字节顺序查找程序

;入口 :R0,R1,A,R6,R7

;占用资源:B

;堆栈需求:2字节

;出口 :R0,R1,A

FINDB2 :MOV B,A

MOV DPL,R1

MOV DPH,R0

MOV A,R7

JZ FINDB21

INC R6

FINDB21 :MOVX A,@DPTR

CJNE A,B,FINDB22

MOV R1,DPL

MOV R0,DPH

CLR A

RET

FINDB22 :INC DPTR

DJNZ R7,FINDB21

DJNZ R6,FINDB21

MOV A,#0FFH

RET

;双字节字符串顺序查找程序

;入口 :R0,R1,R3,R4,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R0,R1,A

FINDS1 :MOV DPL,R1

MOV DPH,R0

FINDS11 :MOVX A,@DPTR

INC DPTR

CLR C

SUBB A,R4

JNZ FINDS12

MOVX A,@DPTR

SUBB A,R3

JNZ FINDS12

MOV A,DPL

CLR C

SUBB A,#01H

MOV R1,A

MOV A,DPH

SUBB A,#00H

MOV R0,A

CLR A

RET

FINDS12 :DJNZ R7,FINDS11

MOV A,#0FFH

RET

;双字节字符串顺序查找程序

;入口 :R0,R1,R3,R4,R6,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R0,R1,A

FINDS2 :MOV DPL,R1

MOV DPH,R0

MOV A,R7

JZ FINDS21

INC R6

FINDS21 :MOVX A,@DPTR

INC DPTR

CLR C

SUBB A,R4

JNZ FINDS22

MOVX A,@DPTR

SUBB A,R3

JNZ FINDS22

MOV A,DPL

CLR C

SUBB A,#01H

MOV R1,A

MOV A,DPH

SUBB A,#00H

MOV R0,A

CLR A

RET

FINDS22 :DJNZ R7,FINDS21

DJNZ R6,FINDS21

MOV A,#0FFH

RET

;N字节字符串顺序查找程序

;入口 :ADDPH,ADDPL,R0,R6,R7,N

;占用资源:ACC,B,R2,NCNT

;堆栈需求:2字节

;出口 :ADDPH,ADDPL,A

FINDN :MOV A,R0

MOV R2,A

MOV A,ADDPL

MOV DPL,A

MOV A,ADDPH

MOV DPH,A

MOV A,R7

JZ FINDN1

INC R6

FINDN1 :MOV A,R2

MOV R0,A

MOV A,N

MOV NCNT,A

FINDN2 :MOVX A,@DPTR

CLR C

SUBB A,@R0

JNZ FINDN3

INC DPTR

INC R0

DJNZ NCNT,FINDN2

MOV A,DPL

CLR C

SUBB A,N

MOV ADDPL,A

MOV A,DPH

SUBB A,#00H

MOV ADDPH,A

CLR A

RET

FINDN3 :CLR C

MOV A,R0

SUBB A,R2

JNZ FINDN4

INC DPTR

FINDN4 :DJNZ R7,FINDN1

DJNZ R6,FINDN1

MOV A,#0FFH

RET

;单字节最值查找程序

;入口 :R0,R1,R6,R7

;占用资源:ACC,B

;堆栈需求:2字节

;出口 :R0(最大值),R1(最小值),R2,R3,R4,R5

FMAMIB :MOV DPL,R1

MOV DPH,R0

MOVX A,@DPTR

MOV R0,A

MOV R1,A

MOV A,DPL

MOV R3,A

MOV R5,A

MOV A,DPH

MOV R2,A

MOV R4,A

MOV A,R7

JZ FMMB1

INC R6

FMMB1 :MOVX A,@DPTR

MOV B,A

SETB C

SUBB A,R0

JC FMMB2

MOV R0,B

MOV R3,DPL

MOV R2,DPH

SJMP FMMB3

FMMB2 :MOV A,B

CLR C

SUBB A,R1

JNC FMMB3

MOV R1,B

MOV R5,DPL

MOV R4,DPH

FMMB3 :INC DPTR

DJNZ R7,FMMB1

DJNZ R6,FMMB1

RET

;浮点数顺序查找程序

;入口 :R0,R1,R2,R3,R4,R6,R7

;占用资源:B,NCNT,FCMP

;堆栈需求:2字节

;出口 :R0,R1,A

FINDF :MOV DPL,R1

MOV DPH,R0

MOV A,R7

MOV B,A

MOV NCNT,R6

JZ FINDF1

INC NCNT

FINDF1 :MOVX A,@DPTR

INC DPTR

MOV R5,A

MOVX A,@DPTR

INC DPTR

MOV R6,A

MOVX A,@DPTR

INC DPTR

MOV R7,A

LCALL FCMP

JNZ FINDF2

MOV A,DPL

CLR C

SUBB A,#03H

MOV R1,A

MOV A,DPH

SUBB A,#00H

MOV R0,A

CLR A

RET

FINDF2 :DJNZ B,FINDF1

DJNZ NCNT,FINDF1

MOV A,#0FFH

RET

;浮点数最值查找程序

;入口 :ADDPH,ADDPL,R6,R7

;占用资源:ACC,B,NCNT,ITEMOV,EBMOV,MOVB,MOVR1,FCMP

;堆栈需求:5字节

;出口 :[R0](最大值),[R1](最小值),R2,R3,R4,R5

FMAMIF :MOV A,ADDPL

MOV R3,A

MOV R5,A

MOV DPL,A

MOV A,ADDPH

MOV R2,A

MOV R4,A

MOV DPH,A

MOV B,R7

MOV R7,#03H

LCALL ITEMOV

MOV R7,#03H

LCALL IBMOV

MOV A,B

JZ FMMF1

INC NCNT

FMMF1 :PUSH B

MOVX A,@DPTR

INC DPTR

MOV R2,A

MOVX A,@DPTR

INC DPTR

MOV R3,A

MOVX A,@DPTR

INC DPTR

MOV R4,A

LCALL MOVR1

LCALL FCMP

JNC FMMF2

MOV A,R0

XCH A,R1

MOV R0,A

LCALL MOVB

MOV R5,DPL

MOV R4,DPH

MOV A,R0

XCH A,R1

MOV R0,A

SJMP FMMF3

FMMF2 :MOV A,R0

XCH A,R1

MOV R0,A

LCALL MOVR1

LCALL FCMP

MOV A,R0

XCH A,R1

MOV R0,A

JZ FMMF3

JC FMMF3

LCALL MOVB

MOV R3,DPL

MOV R2,DPH

FMMF3 :POP B

DJNZ B,FMMF1

DJNZ NCNT,FMMF1

RET

;单字节折半查找程序

;入口 :A,R0,R1,R6,R7

;占用资源:B,R2

;堆栈需求:2字节

;出口 :R0,R1

SEARCHB :MOV B,A

MOV A,R1

ADD A,R7

MOV R7,A

MOV A,R0

ADDC A,R6

MOV R6,A

MOV A,R7

SUBB A,#01H

MOV R7,A

JNC SECH1

DEC R6

SECH1 :MOV A,R7

CLR C

SUBB A,R1

MOV A,R6

SUBB A,R0

JNC SECH2

MOV A,#0FFH

RET

SECH2 :MOV A,R7

ADD A,R1

MOV R2,A

MOV A,R6

ADDC A,R0

RRC A

MOV DPH,A

MOV A,R2

RRC A

MOV DPL,A

MOVX A,@DPTR

CLR C

SUBB A,B

JNC SECH3

INC DPTR

MOV R0,DPH

MOV R1,DPL

SJMP SECH1

SECH3 :JZ SECH5

MOV A,DPL

SUBB A,#01H

MOV R7,A

JNC SECH4

MOV R6,DPH

DEC R6

SECH4 :SJMP SECH1

SECH5 :MOV R0,DPH

MOV R1,DPL

CLR A

RET

  • RAM
    RAM
    +关注

    关注

    6

    文章

    986

    浏览量

    110541
  • 51单片机
    +关注

    关注

    250

    文章

    4930

    浏览量

    116557
  • 程序
    +关注

    关注

    97

    文章

    2710

    浏览量

    77188
收藏 人收藏

    评论

    相关推荐

    如何利用C51单片机去编写1加到100的汇编程序

    如何利用C51单片机去编写1加到100的汇编程序呢?有哪些步骤流程?
    发表于 01-19 06:42

    系统指令与汇编程序设计资料分享

    第三章 系统指令与汇编程序设计3.1 单片机指令系统3.1.1 寻址空间及常用符号3.1.2 寻址方式3.1.3 数据传送与交换指令3.1 单片机指令系统3.1.1 寻址空间及常用符号3.1.2 寻址方式3.1.3 数据传送与交换指令...
    发表于 01-05 07:51

    ARM汇编程序设计

    慕课电子科技大学.嵌入式系统.第五章.ARM汇编程序设计.ARM汇编程序格式0 目录5 ARM汇编程序设计5.1 ARM汇编程序格式5.1.1课堂重点5.1.2测试与作业6 下一章0 目录5 ARM汇编程序设计5.1 ARM汇编程序格式5.1.1课堂重点5.1.2测试与作业6
    发表于 12-20 06:31

    ARM汇编程序设计

    嵌入式系统.第五章.ARM汇编程序设计.ARM汇编程序设计20 目录5 ARM汇编程序设计5.2 ARM汇编程序设计25.2.1课堂重点5.2.2测试与作业6 下一章0 目录5 ARM汇编程序设计5.2 ARM汇编程序设计25.2.1课堂重点5.2.2测试与作业6 下一章博客
    发表于 12-14 07:03

    汇编程序和反汇编程序简要设计

    汇编程序和反汇编程序,可以由机器语言得到汇编语言 不是所有都会默认从0000H开始,保险起见,还是要在开头用ORG 0000H,然后加一条跳转指令到程序存放起始地址 交叉汇编,在一台电脑上汇编,在
    发表于 12-01 06:34

    单片机汇编程序实验

    **单片机实验目录单片机实验实验一1.略2.设计一个求解16位原码数据的补码的程序,要求:原码数据放在R1R0中,补码数据存放在R7R6中;3.设计一个求解两个16位原码数据的减法运算程序,要求
    发表于 11-22 20:51 18次下载
    <b>单片机</b><b>汇编程序</b>实验

    51单片机如何跳出wile循环_51单片机(九)汇编指令

    1 往期链接Chenglin Li:51单片机(一)Visual Basic串口通信程序Chenglin Li:51单片机(二)汇编语言设计流水灯Chenglin Li:51单片机(三)汇编
    发表于 11-22 20:21 64次下载
    <b>51</b><b>单片机</b>如何跳出wile循环_<b>51</b><b>单片机</b>(九)<b>汇编</b>指令

    51单片机汇编程序,温度报警项目

    51单片机汇编程序,温度报警项目
    发表于 11-21 12:36 15次下载
    <b>51</b><b>单片机</b><b>汇编程序</b>,温度报警项目

    用C语言或汇编语言进行单片机编程哪一个会更好

    汇编程序是c语言吗?用C语言或汇编语言进行单片机编程哪一个会更好?单片机汇编编程还是C语言编程呢?
    发表于 10-19 09:11

    单片机入门汇编程序--直流电机的单片机控制

    单片机入门汇编程序--直流电机的单片机控制(15kvaups电源技术协议)-该文档为单片机入门汇编程序--直流电机的单片机控制总结文档,是一份不错的参考资料,感兴趣的可以下载看看,,,,,,,,,,,,,,,,,
    发表于 09-22 14:37 27次下载
    <b>单片机</b>入门<b>汇编程序</b>--直流电机的<b>单片机</b>控制

    单片机入门汇编程序--直流电机的控制

    单片机入门汇编程序--直流电机的控制(安徽理士电源技术有限公司招聘)-该文档为单片机入门汇编程序--直流电机的控制总结文档,是一份不错的参考资料,感兴趣的可以下载看看,,,,,,,,,,,,,,,,,
    发表于 09-22 14:33 10次下载
    <b>单片机</b>入门<b>汇编程序</b>--直流电机的控制

    求AT89C51动态显示共阳极数码管的汇编程序

    AT89C51动态显示共阳极数码管的汇编程序如何去编写?如何对AT89C51动态显示共阳极数码管的汇编程序进行仿真?
    发表于 07-15 06:59

    单片机编程用什么语言

    速度较C语言快,代码占程序存储器的容量较C语言小。这样,汇编程序更适合程序存储器和数据存储器较小的老式单片机。但是,汇编程序毕竟是机器语言的汇编助记符,所以存在指令难记,指令功能弱的缺点,造成学习困难。...
    发表于 07-14 07:54

    STM8S单片机汇编实例源代码免费下载

    本文档的主要内容详细介绍的是一些STM8S单片机汇编实例源代码、汇编程序设计。
    发表于 03-05 08:00 9次下载

    51单片机的实用程序库100实例免费下载

    本文档的主要内容详细介绍的是51单片机的实用程序库100实例免费下载。
    发表于 01-19 17:41 65次下载
    <b>51</b><b>单片机</b>的实用<b>程序库</b>100实例免费下载

    微机的汇编语言及汇编程序设计学习课件免费下载

    本文档的主要内容详细介绍的是微机的汇编语言及汇编程序设计学习课件免费下载包括了:1 概述,2 伪指令,3 表达式及运算符,4 宏指令,5 汇编语言程序的上机过程,6 汇编程序基本设计方法,7 系统功能调用
    发表于 11-02 08:00 6次下载
    微机的<b>汇编</b>语言及<b>汇编程序</b>设计学习课件免费下载

    DS18B20和51单片机连接的汇编程序免费下载

    汇编程序仅适合单个DS18B20和51单片机的连接,晶振为12MHZ左右
    的头像 发表于 09-06 10:52 3513次阅读

    51单片机汇编语言程序设计的学习课件资料概述

    MCS-51单片机编程语言可以是汇编语言也可以是高级语言(如C语言),高级语言编程快捷,但程序长,占用存储空间大,执行慢;汇编语言产生的目标程序简短,占用存储空间小,执行快,能充分发挥计算机的硬件功能。无论是高级语言还是汇编语言,源
    发表于 07-16 15:50 32次下载
    <b>51</b><b>单片机</b><b>汇编</b>语言<b>程序</b>设计的学习课件资料概述

    单片机芯片8279的汇编程序和仿真资料免费下载

    本文档的主要内容详细介绍的是单片机芯片8279的汇编程序和仿真资料免费下载。
    发表于 06-03 16:28 10次下载
    <b>单片机</b>芯片8279的<b>汇编程序</b>和仿真资料免费下载

    汇编程序设计的教程课件免费下载

    本文档的主要内容详细介绍的是汇编程序设计的教程课件免费下载包括了:汇编语言与汇编器,汇编语言程序规范,伪指令及应用,宏指令及应用,汇编语言程序设计,汇编语言的程序结构,顺序结构程序设计,分支结构程序设计,循
    发表于 03-16 17:08 17次下载
    <b>汇编程序</b>设计的教程课件免费下载

    51单片机的实用程序库资料合集免费下载

      本文档的主要内容详细介绍的是51单片机的实用程序库资料合集免费下载包括了:流水灯,方波输出,定时器功能等等
    发表于 03-06 08:00 3次下载
    <b>51</b><b>单片机</b>的实用<b>程序库</b>资料合集免费下载

    求帮忙写个汇编程序

    求大神帮忙写一个汇编程序,用汇编程序实现“行走的小人”这一程序的源代码???
    发表于 09-26 22:49

    51单片机内部各个模块的汇编程序免费下载

    本文档的主要内容详细介绍的是51单片机内部各个模块的汇编程序免费下载包括了:
    发表于 08-27 17:29 7次下载
    <b>51</b><b>单片机</b>内部各个模块的<b>汇编程序</b>免费下载

    使用51单片机控制数码管的汇编程序免费下载

    本文档的主要内容详细介绍的是使用51单片机控制数码管的汇编程序免费下载。
    发表于 08-14 17:32 10次下载
    使用<b>51</b><b>单片机</b>控制数码管的<b>汇编程序</b>免费下载

    51单片机汇编延时程序免费下载

    本文档的主要内容详细介绍的是51单片机汇编延时程序免费下载。用6MHz晶振,51单片机,一个机器周期为2us。延时10s子程序如下
    发表于 08-05 17:34 3次下载
    <b>51</b><b>单片机</b>的<b>汇编</b>延时<b>程序</b>免费下载

    如何使用KEIL C51和proteus实现C51汇编程序的设计实例

    本文档的主要内容详细介绍的是如何使用KEIL C51和proteus实现C51汇编程序的设计实例。
    发表于 07-30 17:35 14次下载
    如何使用KEIL C<b>51</b>和proteus实现C<b>51</b><b>汇编程序</b>的设计实例

    51单片机的精确延时问题详细资料讲解

    一些朋友提出使用C语言编写51单片机延时程序的精度不够,事实上的确如此,由于C语言最终要编译成汇编语言运行,因此,汇编程序会很大,从而影响到延时的精度,在此,贴出一些网上资料供大家参考借鉴。
    发表于 07-17 17:38 0次下载
    <b>51</b><b>单片机</b>的精确延时问题详细资料讲解

    ATT格式汇编的语法格式的详细资料说明

    之前,编过51单片机汇编程序。最近,在看《Linux内核完全注释》,遇到很多AT&T格式的汇编程序,了解到AT&T格式和51单片机汇编语法存在很多的不同。上网搜集到以下AT&T 格式汇编的语法格式。
    发表于 07-10 17:40 0次下载
    ATT格式<b>汇编</b>的语法格式的详细资料说明

    使用51单片机设计红外遥控器的程序库文件免费下载

    本文档的主要内容详细介绍的是使用51单片机设计红外遥控器的程序库文件免费下载。
    发表于 07-08 17:41 7次下载
    使用<b>51</b><b>单片机</b>设计红外遥控器的<b>程序库</b>文件免费下载

    使用51单片机点亮全部LED的汇编程序免费下载

    本文档的主要内容详细介绍的是使用51单片机点亮全部LED的汇编程序免费下载。
    发表于 07-04 17:41 2次下载
    使用<b>51</b><b>单片机</b>点亮全部LED的<b>汇编程序</b>免费下载

    瑞萨单片机插入汇编程序出现警告

    有哪位大侠用过瑞萨单片机?CS+ IDE中插入汇编程序会告警__asm("push psw"); 如何消除?
    发表于 05-07 22:22

    几百个51单片机的设计资料合集免费下载

    本文档的主要内容详细介绍的是几百个51单片机的设计资料合集免费下载包括了:51单片机及其C语言程序开发实例150个,10个51汇编程序样例,67个C语言例程包 程序源码 流水灯、数码管、定时中断的程序说明。
    发表于 03-15 08:00 22次下载
    几百个<b>51</b><b>单片机</b>的设计资料合集免费下载

    单片机汇编语言程序设计的详细资料精讲

    本文档的主要内容详细介绍的是单片机汇编语言程序设计的详细资料精讲包括了:1 汇编程序约定,2 汇编程序设计步骤,3 顺序程序 ,4 分支程序 ,5 循环程序 ,6 算术运算程序
    发表于 03-07 16:37 21次下载
    <b>单片机</b><b>汇编</b>语言<b>程序</b>设计的详细资料精讲

    单片机的按键显示汇编程序资料免费下载

    本文档的主要内容详细介绍的是单片机的按键显示汇编程序资料免费下载。
    发表于 03-05 11:01 8次下载
    <b>单片机</b>的按键显示<b>汇编程序</b>资料免费下载

    51单片机音乐盒梁祝的proteus汇编程序和电路图免费下载

    本文档的主要内容详细介绍的是51单片机音乐盒梁祝的proteus汇编程序和电路图免费下载。
    发表于 02-28 15:51 22次下载
    <b>51</b><b>单片机</b>音乐盒梁祝的proteus<b>汇编程序</b>和电路图免费下载

    单片机入门汇编程序之太阳跟随系统的程序资料免费下载

    本文档的主要内容详细介绍的是单片机入门汇编程序之太阳跟随系统的程序资料免费下载。
    发表于 02-20 17:58 7次下载
    <b>单片机</b>入门<b>汇编程序</b>之太阳跟随系统的<b>程序</b>资料免费下载

    单片机入门汇编程序之直流电机的单片机控制程序资料免费下载

    本文档的主要内容详细介绍的是单片机入门汇编程序之直流电机的单片机控制程序资料免费下载。
    发表于 02-20 17:58 20次下载
    <b>单片机</b>入门<b>汇编程序</b>之直流电机的<b>单片机</b>控制<b>程序</b>资料免费下载

    单片机学习入门之单片机基础知识详细资料概述

    本文档的主要内容详细介绍的是单片机学习入门之单片机基础知识详细资料概述主要内容包括了:1 MCS-51单片机内部结构2 构建单片机最小系统3 单片机指令系统4 单片机汇编程序设计应用举例
    发表于 10-24 11:50 69次下载
    <b>单片机</b>学习入门之<b>单片机</b>基础知识详细资料概述

    Proteus仿真PIC单片机汇编程序——RB中断和按键显示

    Proteus仿真PIC单片机汇编程序——RB中断和按键显示 朋友们送上的使用 Proteus 仿真 学习 PIC 汇编程序的最后一例,但遗憾的是,本例目前仍未完成,没有实现预期效果。 本例的构思
    发表于 09-21 15:04 758次阅读

    51单片机汇编程序有哪些?51单片机汇编程序集详细资料免费下载

    本文档的主要内容详细介绍的是51单片机汇编程序有哪些?51单片机汇编程序集详细资料免费下载。
    发表于 09-06 16:31 46次下载
    <b>51</b><b>单片机</b><b>汇编程序</b>有哪些?<b>51</b><b>单片机</b><b>汇编程序</b>集详细资料免费下载

    51单片机LCD1602汇编程序详细资料免费下载

    1602汇编程序51单片机汇编程序,仅需修改引脚定义即可。晶振大小12M,程序测试完全正确。内部包含写数据、写命令(包括读忙和不读忙)、初始化等子函数。调用时先给LCD_DAT赋值,给出需要写入的数据或命令,然后调用。
    发表于 08-24 15:24 20次下载
    <b>51</b><b>单片机</b>LCD1602<b>汇编程序</b>详细资料免费下载

    怎么编写一个最简单的单片机程序?

    在以上汇编程序中,延时子程序每一行的具体含义先不管他,以后慢慢学到,上面的程序需要在一个名为“KeiluVision2”的软件中汇编完成,汇编后得到一个*.hex文件,这就是目标文件,然后用编程器将该文件“写”到单片机89s51中,这样该89s
    的头像 发表于 08-13 17:56 3.5w次阅读
    怎么编写一个最简单的<b>单片机</b><b>程序</b>?

    DSP汇编程序优化方法的探讨

    DSP汇编程序优化方法的探讨
    发表于 10-20 10:41 5次下载
    DSP<b>汇编程序</b>优化方法的探讨

    基于51单片机汇编语言教程:22课单片机串行口通信程序设计

    基于51单片机汇编语言教程:22课单片机串行口通信程序设计
    发表于 09-04 11:00 23次下载

    交通灯汇编程序

    汇编程序,在单片机中是一类比较简单的程序
    发表于 06-17 15:55

    基于80c51单片机

    求一份基于80c51单片机程序,要求8个灯按13572468顺序点亮,并循环。要求汇编程序
    发表于 05-11 09:36

    求一份51单片机的12864汇编程序,最好有proteus仿真

    求一份51单片机的12864汇编程序,最好有proteus仿真
    发表于 10-13 09:05

    求一份SHT11的51单片机汇编程序

    求一份SHT11的51单片机汇编程序
    发表于 10-11 21:33

    求一份SHT11 的51单片机汇编程序

    求一份SHT11 的51单片机汇编程序
    发表于 10-11 21:30

    51单片机的40个实验原理和程序(包含汇编和C语言程序

    51单片机的40个实验,每个实验采用多种编程思路,包含汇编和C语言程序
    发表于 08-30 17:02 20次下载

    单片机编程汇编语言基础-常用指令和程序模式

    单片机编程分为单片机C语言编程单片机汇编语言编程两种类型,单片机汇编语言编程作为单片机高级程序设计ARM、新品单片机汇编语言编辑器的编译基础,在单片机
    发表于 07-26 10:18 1.4w次阅读
    <b>单片机</b><b>编程</b>之<b>汇编</b>语言基础-常用指令和<b>程序</b>模式

    MSP430 C和汇编程序

    MSP430 C和汇编程序,有需要的朋友下来看看。
    发表于 05-25 10:26 18次下载

    51单片机汇编轻松入门

    51单片机汇编教程,适合有些编程基础的,便于理解
    发表于 03-04 15:07 11次下载

    51单片机汇编语言教程_第一个单片机程序

    51单片机汇编语言教程:4课第一个单片机程序
    发表于 01-19 15:27 4次下载

    51单片机汇编语言教程_单片机汇编课程简介

    51单片机汇编语言教程:1课单片机汇编课程简介
    发表于 01-19 15:27 25次下载

    51单片机汇编语言教程_单片机延时程序分析

    51单片机汇编语言教程:5课单片机延时程序分析
    发表于 01-19 15:26 2次下载

    51单片机汇编程序

    51单片机汇编程序包。
    发表于 01-06 14:12 14次下载

    单片机按键控制程序汇编版】

    单片机按键控制程序汇编版】单片机按键控制程序汇编版】单片机按键控制程序汇编版】单片机按键控制程序汇编版】
    发表于 12-29 11:04 6次下载

    汇编程序100例

    汇编程序100例,方便初学者快速的入门,加快掌握汇编语言。
    发表于 11-17 15:22 86次下载

    求一个八位拖尾流水灯(雨滴)的汇编程序及讲解,用的89c51单片机,,求大神帮忙。

    求一个八位拖尾流水灯(雨滴)的汇编程序及讲解,用的89c51单片机,,求大神帮忙。只是听说用PWM控制,但具体还不是太懂。谢谢大家了
    发表于 08-24 19:06

    求大神单片机输出可调方波简单汇编程序

    我想编一个汇编程序来控制引脚输出占空比可调的方波,不用外加芯片,只是简单的按键和单片机
    发表于 07-18 11:51

    单片机汇编程序死机

    为什么我做的射频发射汇编程序,快速按键时会死机。发码用的是查表。死机现象表现为在时钟中断里死循环
    发表于 06-27 09:37

    求S51单片机4*4密码锁的汇编程序

    求S51单片机4*4密码锁的汇编程序,急求考试要求设计作品可是实在不会写
    发表于 01-08 10:22

    这是单片机89c51的数字钟的汇编程序和protus仿真图,已经成功

    这是单片机89c51的数字钟的汇编程序和protus仿真图,已通过验证。
    发表于 06-17 13:05

    单片机万年历汇编程序

    单片机万年历汇编程序
    发表于 04-22 22:15

    超级新人求助:关于用VS2010编写单片机汇编程序

    `我在学习单片机过程中一直用的是WIN7系统,最开始用KEIL写一些C语言程序时一切都还算顺利,但是最近开始学习汇编程序,苦于找不到WIN7环境下的IDE,偶然在网上看到VS2010可以写汇编程序
    发表于 11-03 22:17

    单片机编程汇编程序实例

    很好的汇编程序单片机的结合
    发表于 10-06 14:46

    谁有QC12864B 串行的汇编程序

    本人菜鸟,刚学的单片机,用汇编编写。现在急需QC12864B 串行的汇编程序,恳请高手们帮帮忙,谢谢。
    发表于 09-09 22:41

    关于编写ARM汇编程序的几点理解

    其实编写ARM汇编程序并不难,但初步学习理解困难。关键我们需整体进行汇编学习。其实对于ARM来说,无非就是那些指令使用,但指令很多。学过51汇编指令很少,为什么?很容易,ARM中有37个寄存器
    发表于 07-03 00:19

    AVR单片机汇编程序怎么写 啊??

    AVR单片机汇编程序怎么写 啊??
    发表于 12-31 11:56

    单片机实用子程序库

    本帖最后由 eehome 于 2013-1-5 09:47 编辑 单片机实用子程序库
    发表于 08-16 19:30

    51单片机汇编设计实例

    本书包含3部分内容:第1部分介绍51系列单片机的硬件资源、汇编指令与C语言编程基础;第2部分介绍5个单片机汇编与C程序设计应用实例,给出了完整的汇编与C语言源程序及注释;第3部分
    发表于 12-23 14:42 790次下载
    <b>51</b><b>单片机</b><b>汇编</b>设计实例

    C程序变量与汇编程序变量的共用

    ,_to_dte_buff在汇编程序中引用而在C程序可直接定义的变量:unsigned char to_dte_buff[BUFF_SIZE]; //DSP发向PC的数据int to_dte_num; //缓冲区中存放
    发表于 07-16 14:18

    EMC系列单片机汇编程序

    本文提供的EMC系列单片机汇编程序,希望对你学习有所帮助!
    发表于 06-03 15:32 32次下载

    PIC单片机控制时钟芯片DS1302汇编程序

    PIC单片机控制时钟芯片DS1302汇编程序
    发表于 05-24 09:56 1505次阅读

    Keil C51中C51程序汇编程序的接口方法

    为函数的调用,只不过此函数是采用不同语言编写的而已。当C51模块程序编译成目标文件后,其中的函数名依据其定义的性质不同会转换为不同的函数名,因此,在C和汇编程序的相互调用中,要求汇编程序必须服从
    发表于 03-04 15:18

    单片机原理与应用及C51程序设计课件 PDF文档

    四川省高等教育教学改革工程人才培养质量和教学改革项目教材单片机原理与应用及C51程序设计第一章 基础知识第二章 单片机基本原理第三章 单片机汇编程序设计第四章 单片机C语言程序设计第五章
    发表于 02-18 15:50

    PCF8563汇编程序

    刚写的一个PCF8563汇编程序,请教高手!!!;***************************************************************;PCF8563时钟
    发表于 08-19 17:41 88次下载

    KeilC51中C51程序汇编程序的接口方法

    C语言程序汇编语言程序的相互调用可视为函数的调用,只不过此函数是采用不同语言编写。在C和汇编程序的相互调用中,要求汇编程序必须服从Keil C51中对函数名的转换规则,同
    发表于 07-09 17:49 73次下载

    汇编程序编写

     汇编程序编写 汇编程序举例􀂊GISR5: ;优先级INT5中断人口􀂊CLRC INTM ;开总中断(因为一进中断就自动关闭总中断)􀂊RET􀂊􀂊;
    发表于 03-30 15:55 31次下载

    汇编程序中灵活运用TSRs的程序库

    汇编程序中灵活运用TSRs的程序库
    发表于 02-24 14:43 2次下载

    MCS-51单片机实用子程序库实验(四)

    本浮点子程序库有三个不同层次的版本,以便适应不同的应用场合:1.小型(FQ51A
    发表于 01-08 09:48 64次下载

    51单片机汇编软件

    51单片机汇编软件:经过单片机解密后得到了机器代码后,往往需要多学习一些别人的编程经验或是对程序进行修改。在没有源程序的情况下,反汇编目标代码为我们提供了一种
    发表于 10-12 07:55 732次下载
    <b>51</b><b>单片机</b>反<b>汇编</b>软件

    51 系列汇编程序设计的优化1

    51 系列汇编程序设计的优化1
    发表于 05-15 14:55 24次下载

    MCS-51单片机指令系统和汇编语言程序实例

    MCS-51单片机指令系统和汇编语言程序实例 介绍MCS-51的指令系统和汇编语言编程,了解处理器的软件资源3.1 MCS-51单片机指令系统概述􀂄 3.2 寻址方式􀂄 3.3
    发表于 03-18 22:28 451次下载
    MCS-<b>51</b><b>单片机</b>指令系统和<b>汇编</b>语言<b>程序</b>实例

    I2C汇编程序

    I2C汇编程序:/*****;FileName: IicSMasU.a51;Describe: 51 系列模拟I2C 总线主控器驱动程序;Date: 2003/11/12
    发表于 03-02 23:38 32次下载

    单片机汇编语言程序库

    单片机汇编语言程序库内容有运算子程序,通讯子程序,扩展接口程序,中断服务子程序,代码转换,逻辑操作,数据结构,其他。
    发表于 01-19 22:39 80次下载
    <b>单片机</b><b>汇编</b>语言<b>程序库</b>

    51单片机浮点子程序库

    程序库的使用方法如下:1.将子程序库全部内容链接在应用程序之后,统一编译即可。优点是简单方便,缺点是程序太长,大量无关子程序也包含在其中。 2.仅将子程序库
    发表于 12-21 15:52 44次下载

    单片机常用程序库

    单片机常用程序库包中提供了一些有实际应用价值的子程序供参考选用 SUB1----X25045/43 看门狗/存储器与 89C2051接口子程序程序/原理图(21K)X25045.EXE SUB2----AT24C02/04/08/
    发表于 10-30 15:58 101次下载

    单片机教程下载

    单片机教程内容有:CS-51单片机实用子程序库,单片机编程入门26讲,C51单片机C语言学习,单片机C语言教程,单片机应用等等。
    发表于 10-07 15:22 120次下载
    <b>单片机</b>教程下载

    51单片机实验程序

    一共有9个51单片机实验程序,实际上还有相关的汇编程序N例,单片机嵌入式程序和I2C源程序等等。
    发表于 09-11 10:47 15次下载
    <b>51</b><b>单片机</b>实验<b>程序</b>

    51汇编程序实例

    51汇编程序实例:举一例说明:流水灯加数码管 LOOP:     ; 标号CLR P2.6   ;选中p2.6 数码管左边的8字使能SETB P2.7   ;p2.7不使能。 右边的数码管
    发表于 09-11 10:42 705次下载
    <b>51</b><b>汇编程序</b>实例

    单片机实用子程序(MCS-51)

    MCS-51单片机实用子程序库 ;片内RAM初始化子程序IBCLR: MOV A,R0MOV R1,ACLR AIBC1 : MOV @R1,AINC R
    发表于 08-30 00:31 139次下载
    <b>单片机</b>实用子<b>程序</b>(MCS-<b>51</b><b>库</b>)

    专业解PIC滚动码/单片机汇编型号未尽请来电咨询

    专业解PIC滚动码/单片机汇编型号未尽请来电咨询承接各种单片机汇编业务,及代为修改反汇编程序功能    各种格式的烧录代码都可反汇编,目前反汇编单片机
    发表于 07-25 15:23 550次阅读

    键盘扫描汇编程序

    PIC键盘扫描汇编程序 ;;............................... 键盘扫描子程序---16键,D口低四位输出,高四位输入 ;...............................JIANPAN MOVLW 00H&
    发表于 01-11 19:23 2149次阅读

    下载硬声App