b.asm

来自「这个程序是我们的大作业,里面有语法分析,词法分析,四原式等等,里面有具体内容和事」· 汇编 代码 · 共 119 行

ASM
119
字号
da segment
	data dw 300 dup(?)
	i dw ?
	sum dw ?
da ends
code segment
	 assume cs:code,ds:da
main proc far
start:mov dx,da
	mov ds,dx
j0:
	mov dx,0
	mov sum,dx
j1:
	mov dx,0
	mov i,dx
j2:
	mov dx,i
	cmp dx,3
	jbe jj21
	mov dx,0
	jmp jj22
jj21:
	mov dx,1
jj22:
	mov bx,2
	mov ax,4
	push(dx)
	mul bx
	pop(dx)
	mov bx,ax
	mov data[bx],dx
j3:
	mov bx,2
	mov ax,4
	push(dx)
	mul bx
	pop(dx)
	mov bx,ax
	cmp data[bx],1
	jz j4
	jmp j8
j4:
	mov dx,sum
	add dx,i
	mov sum,dx
j5:
	mov dx,i
	add dx,1
	mov bx,5
	mov ax,4
	push(dx)
	mul bx
	pop(dx)
	mov bx,ax
	mov data[bx],dx
j6:
	mov bx,5
	mov ax,4
	push(dx)
	mul bx
	pop(dx)
	mov bx,ax
	mov dx,data[bx]
	mov i,dx
j7:
	jmp j2
j8:
	mov dx,sum
	mov bx,8
	mov ax,4
	push(dx)
	mul bx
	pop(dx)
	mov bx,ax
	mov data[bx],dx
j9:
	mov bx,8
	mov ax,4
	push(dx)
	mul bx
	pop(dx)
	mov bx,ax
	mov bx,data[bx]
	mov ah,02h
	mov cx,4
	mov dl,bh
	shr dl,cl
	call putdl
	mov dl,bh
	shl dl,cl
	shr dl,cl
	call putdl
	mov dl,bl
	shr dl,cl
	call putdl
	mov dl,bl
	shl dl,cl
	shr dl,cl
	call putdl
j10:	mov ah,4ch
	int 21h
main endp
putdl proc near
	mov ah,2
	cmp dl,9
	jbe put1
	sub dl,10d
	add dl,'a'
	int 21h
	ret
put1: 
	add dl,'0'
	int 21h
	ret
putdl endp
	code ends
end start

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?