王爽汇编语言 课程设计1

  • 格式:doc
  • 大小:45.00 KB
  • 文档页数:7

下载文档原格式

  / 21
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

;第十章课程设计1。

assume cs:codesg,ds:data,es:table,ss:stack

data segment

db

'1975','1976','1977','1978','1979','1980','1991','1982','1983' db

'1984','1985','1986','1987','1988','1989','1990','1991','1992' db'1993','1994','1995'

dd

16,22,382,1356,2390,8000,16000,24486,59965,97479,140417,197514 dd

345980,590827,8035530,1183000,1843000,2759000,3753000,4649000 dd 593700

dw

3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226 dw 11542,14430,15257,17800

data ends

table segment

db 21 dup ('year summ ne ?? ')

db 40 dup(' ')

db 10 dup(0)

db 4 dup(0)

table ends

stack segment

dw 32 dup(0)

stack ends

codesg segment

start: mov ax,data

mov ds,ax

mov ax,table

mov es,ax

mov ax,stack

mov ss,ax

mov sp,64

mov bx,0

mov bp,0

call transmit

mov bx,0

mov cx,21

mov al,5

mov es:[bp+32h],al

mov al,20

mov es:[bp+33h],al

mov ax,28h

mov es:[bp+34h],ax

s_sta: call arrange

call show_dec

add bx,10h

mov al,es:[bp+32h]

inc al

mov es:[bp+32h],al

loop s_sta

mov ax,4c00h

int 21h

;////////////transmint///////////transmit//////////transmit///////////// ///

transmit: mov bx,0

mov bp,0

mov cx,21

s: push cx

;year

mov cx,4

mov si,0

s1: mov al,ds:[bx][si]

mov es:[bp][si],al

inc si

loop s1

pop cx

;summ

mov ax,ds:[bx][84]

mov es:[bp][5],ax

mov ax,ds:[bx+2][84]

mov es:[bp+2][5],ax

add bx,4

add di,2

add bp, 16

loop s

;ne

mov si,0

mov bx,0

mov bp,0

mov cx,21

s2:mov ax,[bx+168][si]

mov es:[bp][0ah],ax

add si,2

add bp,16

loop s2

;shou ru

mov bx,0

mov bp,0

mov si,0

mov di,0

mov cx,21

s3:mov ax,[bx+84][si]

mov dx,[bx+84+2][si]

div word ptr [bx+168][di]

mov es:[bp][0dh],ax

add si,4

add di,2

add bp,16

loop s3

ret

;//////////////////arrange//////////arrange/////////////arrange//////// arrange:push cx

push si

mov bp,150h

mov si,0

mov di,0

mov dx,0

;arrange year

mov ax,es:[bx][si]

mov es:[bp][si],ax

mov ax,es:[bx][si+2]

mov es:[bp][si+2],ax

;arrange year

mov ax,es:[bx+5][si]

mov dx,es:[bx+5][si+2] call tran_dec

mov cx,di

inc cx

s2_ar: mov al,es:[bp+28h][di]

mov es:[bp+10][di],al

sub di,1

loop s2_ar

;arrange summ

mov si,0

mov ax,es:[bx+0ah][si]

mov dx,0

call tran_dec

mov cx,di

inc cx

s3_ar:mov al,es:[bp+28h][di]

mov es:[bp+20][di],al

sub di,1

loop s3_ar

;arrange ne

mov si,0

mov ax,es:[bx+0dh][si]

mov dx,0

call tran_dec

mov cx,di

inc cx

s4_ar:mov al,es:[bp+28h][di]

mov es:[bp+30][di],al

sub di,1

loop s4_ar

pop si

pop cx

ret

tran_dec: