汇编实验CQU

一系列汇编语言实验,包括简单程序设计、分支程序设计、循环程序设计、子程序设计及DOS中断调用,扩展定时器/计数器接口实验,以及8255并行接口模块的LED控制和开关状态处理。实验涉及数据运算、条件判断、循环结构、中断调用等基本编程概念和技术。
摘要由CSDN通过智能技术生成

第一次实验 简单程序设计

实验教程P22-23 ②③题

STACKA SEGMENT STACK
       DB 100 DUP(?)
STACKA ENDS
DATA SEGMENT
     NUM1 DD 2A8B7654H
     NUM2 DW 5ABCH
     NUM3 DW ?
     NUM4 DW ?
DATA ENDS
CSEG SEGMENT
     ASSUME CS:CSEG,DS:DATA
START: MOV AX,DATA
       MOV DS,AX
       MOV AX,WORD PTR NUM1
       MOV DX,WORD PTR NUM1+2
       DIV NUM2
       MOV NUM3,AX
       MOV NUM4,DX
       MOV AH,4CH
       INT 21H
CSEG ENDS
     END  START
STACKA SEGMENT STACK
       DB 100 DUP(?)
STACKA ENDS
DATA SEGMENT
     ARY DB 34H
DATA ENDS
CSEG SEGMENT
     ASSUME CS:CSEG,DS:DATA
START:MOV AX,DATA
      MOV DS,AX
      LEA SI,ARY
      MOV AL,[SI]
      SHR AL,4
      MOV [SI+1],AL
      MOV AL,[SI]
      AND AL,0FH
      MOV [SI+2],AL
      MOV AH,4CH
      INT 21H
CSEG ENDS
     END START

第二次实验 分支程序设计

实验教程P29 ①②题

STACKA SEGMENT STACK
       DB 100 DUP(?)
STACKA ENDS
DATA SEGMENT
     A DB 21H
     B DB 23H
     C DB 44H
     K DB ?
DATA ENDS
CSEG SEGMENT
     ASSUME CS:CSEG,DS:DATA
START: MOV AX,DATA
       MOV DS,AX
       MOV AL,A
       CMP AL,B
       JNE COMP2

       
       CMP AL,C  
       JNE K1   
       JMP K2
COMP2: MOV BL,B
       CMP BL,C
       JE K1

       CMP AL,C
       JE K1
K0:    MOV K,00H
       JMP EXIT
K1:    MOV K,01H
       JMP EXIT
K2:    MOV K,02H
       JMP EXIT

EXIT:  MOV AH,4CH
       INT 21H
CSEG ENDS
     END START
STACKA SEGMENT STACK
       DB 100 DUP(?)
STACKA ENDS
DATA SEGMENT
     A DB 2FH
     B DB 34H
     C DB 1H
     D DB ?
DATA ENDS
CSEG SEGMENT
     ASSUME CS:CSEG,DS:DATA
START:MOV AX,DATA
      MOV DS,AX
      MOV AL,A
      CMP AL,B
      JG FUN
      ADD AL,B
      JMP EXIT
 FUN: SUB AL,B
      ADC AL,C
 EXIT: MOV D,AL
      MOV AH,4CH
      INT 21H
CSEG ENDS
     END START

第三次实验 循环程序设计

实验教程P34 ②③④题。

  1. 存储单元DAT1及DAT2中各有10个字节的二进制数,高字节放在高位地址中。试
    编写一程序将这2个数据相加,结果存放在从DAT3开始的单元中。
DATA SEGMENT
     DATA1 DB 11,22,33,44,55,66,77,88,99,56
     DATA2 DB 56,49,78,56,11,66,46,77,96,88
     DATA3 DB 11 DUP(?)
DATA ENDS
CODE SEGMENT
     ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
      MOV DS,AX
      LEA SI,DATA1
      LEA DI,DATA2
      LEA BX,DATA3
      MOV CX,10
      CLC
LL:   MOV AL,[SI]
	  ADC AL,[DI]
	  MOV [BX],AL
	  INC SI
	  INC DI
	  INC BX
	  LOOP LL	 
      MOV AH,4CH
      INT 21H
CODE ENDS
     END START
  1. 将字符串STRN(以“$”结尾)中的每一个字符均加上偶校验位,并统计有多少个字符因含有奇数个“1”而加上了校验位。统计结果存于N单元中。
DATA SEGMENT
     N DB ?
     STRN DB 'ABCD$'
     COUNT EQU $-STRN
     BUF DB COUNT DUP(?)
DATA ENDS
CODE SEGMENT
     ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
       MOV DS,AX
       LEA SI,STRN
       LEA DI,BUF
       MOV CX,COUNT
       MOV AL,0
LL:    MOV BL,[SI]
	   AND BL,BL
	   JP NEXT
	   INC AL
	   OR BL,80H
NEXT:  MOV [DI],BL
	   INC SI
	   INC DI
	   LOOP L1
	   MOV N,AL
       MOV AH,4CH
       INT 21H
CSEG ENDS
     END START
  1. 在FIRST开始的一片连续的数据区中存放着1O0个字节型数据,编写一个程序,统计第1个数据“0”之前的数据个数。
DATA SEGMENT
     NUM DB ?
     FIRST DB 10 DUP(22),89 DUP(22),0 
     COUNT EQU $-FIRST
DATA ENDS
CODE SEGMENT
     ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
       MOV DS,AX
       LEA SI,FIRST
       MOV CX,COUNT
	   MOV AL,0
AGAIN: MOV BL,[SI]
	   CMP BL,00H
       JNZ FUN
       JMP EXIT
       
FUN:   INC AL
	   INC SI
       LOOP AGAIN
       
EXIT:  MOV NUM,AL
       MOV AH,4CH
       INT 21H
CSEG ENDS
     END START

第四次实验 子程序设计及 DOS中断调用

  1. 如果从键盘上依次输入的是一个数字和一个字母,则输出“RIGHT”标记后结束程序,否则输出标记“ERROR”后转向原出错处重做。试编程实现该功能。
DATA SEGMENT
MSG DB 0AH,0DH,'RIGHT',0DH,'$'
WRN DB 0AH,0DH,'ERROR',0DH,'$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
AGAIN:MOV AH,01H
INT 21H
CMP AL,39H
JA EMSG
CMP AL,30H
JB EMSG
MOV AH,01H
INT 21H
CMP AL,'A'
JB EMSG
CMP AL,'Z'
JB EXIT
CMP AL,'a'
JB EMSG
CMP AL,'z'
JB EXIT
EMSG:LEA DX,WRN
MOV AH,09H
INT 21H
JMP AGAIN
EXIT:MOV DX,OFFSET MSG
MOV AH,09H
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
  1. 编写一个程序分类统计字符个数:即接收输人的一串字符(字符个数不超过50个,该字符串用回车作为结束),并按数字、字母和其他字符分类计数,然后将结果存入dgt、letter和other3个存储单元中,并显示结果。(数字的ASCI码范围是30H39H,大写字母的ASCII码范围是41H5AH,小写字母的ASCII码范围是61H~7AH)。
DATA SEGMENT
        MSG1 DB 0AH,0DH,'Number of digit.',20H,'$'
        MSG2 DB 0AH,0DH,'Number of letters.',20H,'$'
        MSG3 DB 0AH,0DH,'Number of other characters.',20H,'$'
        BUF DB 50
                DB 0
                DB 50 DUP(?)
        DIGIT DB ?
        LETTER DB ?
        OTHER DB ?
DATA ENDS
STACK1 SEGMENT STACK
        DB 100 DUP(?)
STACK1 ENDS
CODE SEGMENT
        ASSUME CS:CODE,DS:DATA,SS:STACK1
START: MOV AX,DATA
        MOV DS,AX
        MOV AH,0AH
        MOV DX,OFFSET BUF
        INT 21H
        MOV SI,OFFSET BUF
        MOV CL,[SI+1]
        MOV CH,00H
        MOV AL,00H
        MOV AH,00H
        MOV BH,00H
AGAIN: MOV BL,[SI+2]
        CMP BL,30H
        JB OTHERA
        CMP BL,3AH
        JB DIGITA
        CMP BL,41H
        JB OTHERA
        CMP BL,5BH
        JB LETTERA
        CMP BL,61H
        JB OTHERA
        CMP BL,78H
        JB LETTERA
OTHERA: INC AL
        JMP ENDLP
DIGITA: INC AH
        JMP ENDLP
LETTERA: INC BH
ENDLP: INC SI
        LOOP AGAIN
        MOV DIGIT,AH
        MOV LETTER,BH
        MOV OTHER,AL
        MOV DX,OFFSET MSG1
        MOV AH,09H
        INT 21H
        MOV AL,DIGIT
	CALL DISP
	MOV DX,OFFSET MSG2
	MOV AH,09H
	INT 21H
	MOV AL,LETTER
        CALL DISP
        MOV DX,OFFSET MSG3
        MOV AH,09H
        INT 21H
        MOV AL,OTHER
        CALL DISP
        MOV AH,4CH
        INT 21H
DISP PROC NEAR
        MOV AH,00H
        MOV DH,0AH
        DIV DH
        MOV CH,AH
        ADD AL,30H
        MOV DL,AL
        MOV AH,02H
        INT 21H
        ADD CH,30H
        MOV DL,CH
        MOV AH,02H
        INT 21H
        RET
DISP ENDP
CODE ENDS
        END START

第五次实验扩展定时器/计数器接口实验

  1. 计数器0工作于方式3,编写初始化程序,观察OUTO信号的变化情况。修改计数初

值,观察OUTO信号的变化情况。

.486
code segment use16
	assume cs:code
	org 1000h
START:MOV DX,30CH  ;8254计数器0初始化
	  MOV AL,00110110B
	  OUT DX,AL
	  MOV DX,300H  ;计数器0送数
	  MOV AH,47000
	  OUT DX,AL
	  MOV AL,AH
	  OUT DX,AL
WT:JMP WT
CODE ENDS
	END START
  1. 将计数器1和0级联,二者均工作于方式3,编写初始化程序,观察OUTl和OUTO信

号的变化,说明二者的关系。修改计数初值,观察OUT1和OUTO信号的变化情况。

.486
CODE SEGMENT USE16
	ASSUME CS:CODE
	ORG 1000H
START:MOV DX,30CH
	  MOV AL,00110110B
	  OUT DX,AL
	  MOV DX,300H
	  MOV AH,47000
	  OUT DX,AL
	  MOV AL,AH
	  OUT DX,AL
	  MOV DX,30CH
	  MOV AL,01110110B
	  OUT DX,AL
	  MOV DX,304H
	  MOV AH,4700
	  OUT DX,AL
	  MOV AL,AH
	  OUT DX,AL
WT:JMP WT
CODE ENDS
	END START	
  1. 计数器2工作于方式1,观察通过由GATE2连接的正脉冲触发计数器开始工作的
    现象。
.486
CODE SEGMENT USE16
ASSUME CS:CODE
	ORG 1000H
START:MOV DX,30CH
	  MOV AL,10110010B
	  OUT DX,AL
	  MOV DX,308H
	  MOV AL,47000H
	  OUT DX,AL
	  MOV AL,AH
	  OUT DX,AL
WT:JMP START
CODE ENDS
	END START

第六次实验

  1. 欲利用8255的C口输出控制两组LED小灯LO、L2、L4、L6和L1、L3、L5、L7亮、灭交替变化,请编程实现。
.486
CODE SEGMENT USE16
ASSUME CS:CODE
ORG 1000H
START:MOV DX,34CH
	  MOV AL,10000000B  ;
	  OUT DX,AL
	  MOV DX,348H
K0:	  MOV AL,10101010B
	  OUT DX,AL
	  CALL DELY
	  MOV AL,01010101B
	  OUT DX,AL
	  CALL DELY
	  JMP K0
;------------------------
DELY PROC
    PUSH ECX
	MOV ECX,02FFFFH
DEL_AGAIN:NOP
	LOOPD DEL_AGIAN
	POP ECX
	RET
DELY ENDP
WT:JMP WT
CODE ENDS
	END START
  1. 利用8255的A口和B口分别实现对8个LED小灯L0L7亮灭的控制和8个开关K1K8状态的获取。现要求统计开关K1K8状态为1的个数(开关拨向前为高电平1,拨向后为低电平0),且将该数值对应的二进制数在8个LED小灯L0L7上显示出来(Li亮表示对应的二进制位为“1”,Li灭表示对应的二进制位为“0”),当开关K4的状态为1时,结束程序的运行,请编程实现。
.486
CODE SEGMENT USE16
ASSUME CS:CODE
ORG 1000H
START:MOV DX,34CH
	  MOV AL,10000010B
	  OUT DX,AL
K0:   MOV DX,344H
	  IN AL,DX
	  MOV AH,AL
	  AND AL,00001000B
	  JNE WT
	  CALL DISP
	  NOT AL
	  MOV DX,340H
	  OUT DX,AL
	  JMP K0
DISP PROC
	  MOV CX,8
	  MOV BL,0
D1:   SHL AH,1
      ADC BL,0
      LOOP D1
      MOV AL,BL
      RET
DISP ENDP
WT:JMP WT
CODE ENDS
	END START
  1. 利用8个开关K1-K8控制8个LED小灯I0-L7的状态。要求:当开关K1拨向前,其余开关拨向后时,L0-L7从右到左逐个循环点亮直到开关状态改变;当开关K1和K2拨向前,其余开关拨向后时,L0-L7从右到左成对逐次循环点亮直到开关状态改变;当开关K1,K2和K3拨向前,其余开关拨向后时,L0~L7以3个为一组逐次循环点亮直到开关状态改变:以此类推,当全部开关拨向前时即停止运行。请编程实现。设8255的B口读开关状态,8255的C口控制LED小灯的亮、灭。
.486
CODE SEGMENT USE16
ASSUME CS:CODE
ORG 1000H
START:MOV DX,34CH
	  MOV AL,10000010B
	  OUT DX,AL
S1:   MOV DX,344H
	  IN AL,DX
	  CMP AL,11111111B
	  JZ WT
S2:   CMP AL,00000001B
	  JZ K1
	  CMP AL,00000011B
	  JZ K2
	  CMP AL,00000111B
	  JZ K3
	  CMP AL,00001111B
	  JZ K4
	  CMP AL,00011111B
	  JZ K5
	  CMO AL,00111111B
	  JZ K6
	  CMP AL,01111111B
	  JZ K7
	  JMP S1
K1:   CALL L1
K2:   CALL L2
K3:   CALL L3
K4:   CALL L4
K5:   CALL L5
K6:   CALL L6
K7:   CALL L7
;-------------------------------------------------
L0 PROC
	MOV DX,344H
	IN AL,DX
	RET
L0 ENDP
L00 PROC 
	MOV DX,348H
	OUT DX,AL
	RET
L00 ENDP
;-------------------------------------------
L1 PROC
L11:CALL L0
	CMP AL,00000001B
	JNE S1
	MOV AL,11111110B
	CALL L00
	CALL DELY
	ROL AL,1
	OUT DX,AL
	JMP L11
	RET
L1 ENDP	
L2 PROC
L21:CALL L0
	CMP AL,00000011B
	JNE S1
	MOV AL,11111100B
	CALL L00
	OUT DX,AL
	CALL DELY
	ROL AL,1
	OUT DX,AL
	JMP L21
	RET
L21 ENDP
;--------------------------------------
L3 PROC
L31:CALL L0
	CMP AL,00000111B
	JNE S1
	MOV AL,11111000B
	CALL L00
	OUT DX,AL
	CALL DELY
	ROL AL,1
	OUT DX,AL
	JMP L31
	RET
L3 ENDP
;-------------------------------------------
L4 PROC
L41:CALL L0
	CMP AL,00001111B
	JNE S1
	MOV AL,11110000B
	CALL L00
	OUT DX,AL
	CALL DELY
	ROL AL,1
	OUT DX,AL
	JMP L41
	RET
L41 ENDP
;----------------------------------------------
L5 PROC
L51:CALL L0
	CMP AL,00011111B
	JNE S1
	MOV AL,11100000B
	CALL L00
	OUT DX,AL
	CALL DELY
	ROL AL,1
	OUT DX,AL
	JMP L51
	RET
L51 ENDP
;-----------------------------------------------------
L6 PROC
L61:CALL L0
	CMP AL,00111111B
	JNE S1
	MOV AL,110000000B
	CALL L00
	OUT DX,AL
	CALL DELY
	ROL AL,1
	OUT DX,AL
	JMP L61
	RET
L6 ENDP
;----------------------------------------------------
L7 PROC
L71:CALL L0
	CMP AL,01111111B
	JNE S1
	MOV AL,10000000B
	CALL L00
	OUT DX,AL
	CALL DELY
	ROL AL,1
	OUT DX,AL
	JMP L71
	RET
L7 ENDP

DELY PROC
	PUSH ECX
	MOV ECX,2FFFFH
DEL_AGN:NOP
	LOOPD DEL_AGN
	POP ECX
	RET
DELY ENDP
	
WT:JMP WT
CODE ENDS
	END START

第七次实验

①利用实验装置上的6位8段 LED 显示器,编写一个从左到右循环显示字符“8”的程序

‌‌‌‌.486
‌‌‌‌CODE SEGMENT
‌‌‌‌  ASSUME CS:CODE
‌‌‌‌  ORG 1000H
‌‌‌‌START:MOV DX,34CH
	MOV AL,10000000B
	OUT DX,AL
	MOV DX,344H;段选口
	MOV AL,8DH;字符8
	OUT DX,AL
‌‌‌‌K1:	MOV AH,00100000B
	MOV AL,AH
	MOV CX,6
‌‌‌‌S1:MOV DX,340H;位选口
	OUT DX,AL
	CALL DELY
‌‌‌‌  ROR AH,1
	MOV AL,AH
	LOOP S1
	JMP K1
‌‌‌‌DELY PROC
	MOV CX,02FFH
‌‌‌‌DELY_AGN:NOP
	LOOP DELY_AGN
	RET
‌‌‌‌DELY ENDP
‌‌‌‌WT:JMP WT
‌‌‌‌CODE ENDS
	END START

②利用实验装置上的6位8段 LED 显示器,完成多位8段 LED 显示器的显示,即设计一个显示字符串1234.56的程序。

‌‌.486
‌‌‌‌CODE SEGMENT USE16
	ASSUME CS:CODE
	ORG 1000H
‌‌‌‌BEG:JMP START
‌‌‌‌MESS DB 3FH,06H,5BH,4FH,0E6H,6DH,7DH;定义0~6的字符表
‌‌‌‌DISPD DB 01H,02H,03H,04H,05H,06H;定义显缓区
‌‌‌‌START:MOV DX,34CH
	MOV AL,10000000B
	OUT DX,AL
S1:CALL DISP
	JMP S1
;---------------------------------------------------
‌‌‌‌DISP PROC
	MOV AH,01H
	LEA SI,DISPD
D0:	LEA BX,MESS
	MOV AL,[SI]
	XLAT
	MOV DX,344H
	OUT DX,AL
	MOV DX,340H
	MOV AL,AH
	OUT DX,AL
	CALL DELY
D1:SHL AH,1
	JC END1
	INC SI
	JMP D0
END1:RET
DISP ENDP
‌‌‌‌;--------------------------------------------------------
‌‌‌‌DELY PROC
	PUSH ECX
	MOV ECX,01FFH
‌‌‌‌DELY_AGN:NOP
	LOOPD DELY_AGN
	POP ECX
	RET
‌‌‌‌DELY ENDP
WT:JMP WT
‌‌‌‌CODE ENDS
	END BEG
  1. 显示学号
.486
CODE SEGMENT USE16
	ASSUME CS:CODE
	ORG 1000H
BEG:JMP START
MESS DB 5BH,3FH,3FH,3FH,3FH,3FH,3FH,3FH   ;这里填充你的学号
START:MOV DX,34CH
	MOV AL,10000000B
	OUT DX,AL
S1:CALL DISP
	JMP S1
;-------------------------------------
DISP PROC
	MOV AH,10000000B
	MOV BL,0
D0:	LEA SI,MESS
	MOV AL,BL
	XLAT
	MOV DX,340H  ;段选口
	OUT DX,AL
	MOV DX,344H  ;位选
	MOV AL,AH
	OUT DX,AL
	CALL DELY
D1:SHR AH,1
	JC END1
	INC BL
	JMP D0
END1:RET
DISP ENDP
DELY PROC
	PUSH ECX
	MOV ECX,02FFH
DELY_AGN:NOP
	LOOPD DELY_AGN
	POP ECX
	RET
DELY ENDP
WT:JMP WT
CODE ENDS
	END BEG

第八次实验

1.利用扩展板并行接口模块上4×4键盘中的A、B两个键来模拟是否进行声光报警的控制。即当A键按下时,启动报警,此时蜂鸣器以2s为周期发声(响1s,停1s),实验装置中的LED小灯(D1~D8)以2s为周期闪烁:当B键按下时,停止报警,8个LED小灯全部熄灭,并结束程序。

;LED灯8255 PA
;8254 OUT1接 8255 PB7 PB3~PB0 接键盘行信号(输入)  PC3~0 接列信号(输出)  PC7口接蜂鸣器
.486
CODE SEGMENT USE16
     ASSUME CS:CODE
     ORG 1000H
BEG: JMP START

START:
    MOV DX 32CH
    MOV AL 00110110 ;通道0工作在3方式
    OUT DX,AL
    MOV AX 47000
    MOV DX 320H
    OUT DX AL
    MOV AL AH
    OUT DX AL  ;让8254通道0 OUT0产生周期为1s的脉冲信号
    MOV DX 32CH
    MOV AL,01010110 ;通道1工作在3方式
    OUT DX AL
    MOV DX 324H
    MOV AL 2
    OUT DD AL   ;OUT1产生周期为2s的脉冲信号
    MOV DX,34CH
    MOV AL,10000010B ;A口输出 B口输入 C口输出
    OUT DX,AL

    MOV AL,00H
    MOV DX,348H
    OUT DX,AL ;给列控制信号低电平

LP1: MOV DX,344H
    IN AL,DX   ;读取 行信号
    AND AL,0FH
    CMP AL,07H  
    JZ K1       ;A键被按下
    CMP AL,0BH  
    JZ K2       ;B键被按下
    JMP LP1   ;键盘没有按下继续循环
K1:  CALL DLY_L0 ;消抖
     CALL BAOJING
     JMP LP1
K2:  CALL DLY_L0 ;消抖
     CALL JIESHU
WT:     JMP WT
;---------------------------------------
BAOJING PROC
 AGA:   
        MOV DX,344H
        IN AL,DX ;读B口数据
        AND AL,0FH
        CMP AL,0FH  ;判断有无按键按下
        JNZ EXIT1   ;有按键按下
        MOV AL,0FFH
        MOV DX,340H
        OUT DX,AL ;LED亮
        MOV AL 80H
        MOV DX 348H
        OUT DX AL
        CALL DLY_L0
        MOV AL 00H
        OUT DX AL
        CALL DLY_L0
        MOV DX 344H
        IN AL DX ;PB7接OUT1
        AND 80H
        CMP AL 80H
        JZ AGA  ;仍为高电平跳转到AGA
AGA1:   
        MOV DX,344H
        IN AL,DX ;读B口数据
        AND AL,0FH
        CMP AL,0FH  ;判断有无按键按下
        JNZ EXIT1   ;有按键按下
        MOV AL,00H
        MOV DX,340H
        OUT DX,AL ;LED灭 
        MOV DX 344H
        IN AL DX
        AND 80H
        CMP AL 80H
        JNZ  AGA1  ; 不为高电平 跳转到AGA1
        JMP AGA
EXIT1:   RET
BAOJING ENDP
;---------------------------------------
JIESHU PROC
        MOV AL,00H
        MOV DX,340H
        OUT DX,AL
        RET
JIESHU ENDP
;---------------------------------------
DLY_L PROC
        PUSH ECX
        MOV ECX,4FFFFH
DLYL_AGN:NOP
        LOOPD DLYL_AGN
        POP ECX
        RET
DLY_L ENDP
;---------------------------------------
DLY_L0 PROC
        PUSH ECX
        MOV ECX,000FFH
DLYL_AGN1:NOP
        LOOPD DLYL_AGN1
        POP ECX
        RET
DLY_L0 ENDP
;---------------------------------------
CODE ENDS
     END BEG
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值