`
xshq
  • 浏览: 44104 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

王爽《汇编语言》课程设计一

    博客分类:
  • pc
 
阅读更多
assume cs:code,ds:data

buf	segment
	db 0a0H dup (' '),0
buf ends

data	segment
	db '1975','1976','1977','1978','1979','1980','1981','1982','1983','1984'
	db '1985','1986','1987','1988','1989','1990','1991','1992','1993','1994'
	db '1995'
	;以上表示21年的21个字符串
	dd 16,22,382,1356,2390,8000,16000,24486,50065,97479
	dd 140417,197514,345980,590827,803530,1183000,1843000,2759000,3753000,4649000
	dd 5937000
	;以上表示21年公司总收入的21个dword型数据
	dw 3,7,9,13,28,38,130,220,476,778
	dw 1001,1442,2258,2793,4037,5635,8226,11542,14430,15257
	dw 17800
	;以上是表示21年公司雇员人数的21个word型数据
data	ends

table	segment
	db 21 dup ('year summ ne ?? '),0
table	ends

code	segment 
main:

	mov ax,table
	mov ds,ax
	mov ax,data
	mov es,ax
	mov si,0
	mov di,0
	call copy

	mov ax,buf
	mov ds,ax
	mov ax,table
	mov es,ax
	
	mov bl,2
	mov cx,21
s2:
	mov ax,es:[di]
	mov [si],ax
	mov ax,es:[di+2]
	mov [si+2],ax
	mov al,es:[di+4]
	mov [si+4],al
	
	mov ax,es:[di+5]
	mov dx,es:[di+7]
	add si,5
	call dtoc
		
	mov ax,es:[di+10]
	xor dx,dx
	add si,11
	call dtoc		
	
	mov ax,es:[di+13]
	xor dx,dx
	add si,6
	call dtoc
		
	xor si,si
	mov dh,bl
	mov dl,2
	push cx
	mov cl,2
	add di,10H
	call show_str
	pop cx
	inc bl
	loop s2
		
	mov ax,4c00H
	int 21H

copy:
	push ax
	push bx
	push cx
	push dx
	push si
	push di
	
	xor bx,bx
	mov cx,21
s1:
	;年份
	mov ax,es:[bx+di]
	mov [si],ax
	mov ax,es:[bx+di].2
	mov [si].2,ax
	
	;总收入
	mov ax,es:84[bx+di]
	mov [si].5,ax
	mov dx,es:84[bx+di].2
	mov [si].7,dx
	
	;平均收入
	div word ptr es:168[di]
	mov [si].13,ax
	
	;人数
	mov ax,es:168[di]
	mov [si].10,ax
	
	xor al,al
	;mov [si+0fH],al
	add bx,2
	add di,2
	add si,10H
	loop s1
	
	pop di
	pop si
	pop dx
	pop cx
	pop bx
	pop ax	
ret

;名称:  show_str
;功能:  在指定的位置,用指定的颜色,显示一个用0结尾的字符串
;参数:  (dh)=行号(取值范围0-24),(dl)=列号(取值范围0-79),(cl)=颜色
;  ds:si指向字符串的首地址
;返回:  无
show_str:
	push ax 
	push bx 
	push cx 
	push dx
	push es 
	push si 
	push di 
	mov ax,0b800H 
	mov es,ax 
	mov al,0a0H        ;行长度 
	mul dh
	mov bx,ax        ;行地址
	xor dh,dh 
	mov di,dx 
	add di,dx        ;列地址 
	mov al,cl        ;属性 
do:
	mov cl,[si] 
	mov ch,0
	jcxz enddo
	mov ch,al;属性 
	mov es:[bx][di],cx
	inc si
	add di,2
	jmp short do
enddo:
	pop di
	pop si
	pop es
	pop dx
	pop cx
	pop bx
	pop ax
	ret

;名称:	dtoc
;功能:	将word型数据转变为表示十进制数的字符串,字符串以0为结尾符
;参数:	(ax)=结果的低16位,(dx)=结果的高16位,ds:si指向字符串的首地址
;返回:	无
dtoc:
	push ax
	push cx
	push dx
	push si 
	push di
do1:
	mov cx,10
	call divdw
	;(ax)=结果的低16位,(dx)=结果的高16位,(cx)=余数
	add cx,30H
	mov [si],cl
	inc si
	mov cx,ax
	or cx,dx
	jcxz enddo1
	jmp short do1
enddo1:
	;mov byte ptr [si],0

	mov bp,sp
	mov di,[bp+2]
	mov cx,si
	sub cx,di
	shr cx,1
	jcxz s3
	dec si
s:
	xchg dl,[si]
	xchg dl,[di]
	xchg dl,[si]
	dec si
	inc di
	loop s

s3:
	pop di
	pop si
	pop dx
	pop cx
	pop ax
	ret

;名称:	divdw
;参数:	(ax)=dword型数据的低16位,(dx)=dword型数据的高16位
;	(cx)=除数
;返回:	(ax)=结果的低16位,(dx)=结果的高16位
;	(cx)=余数
divdw:
	push bp
	mov bp,sp
	sub bp,6
	mov [bp],ax
	mov [bp+2],dx
	mov ax,[bp+2]
	xor dx,dx
	div cx
	mov [bp+4],ax
	mov ax,[bp]
	div cx
	mov cx,dx
	mov dx,[bp+4]
	pop bp
	ret
	
code	ends
	end main

 

分享到:
评论

相关推荐

    王爽《汇编语言》课程设计2源程序.asm

    王爽《汇编语言》课程设计2源程序.asm。测试环境:VMware创建XP虚拟机和软盘镜像,运行编译后的可执行文件.exe。重启XP虚拟机查看效果。

    王爽——汇编课程设计一

    王爽----汇编语言 课程设计一(含代码)

    王爽汇编课程设计2

    完全自我独立完成的王爽汇编语言课程设计2,虽然自我比较满意,比较完整,可以给初学者一个参考,大虾们也可提提建议。 (本程序在Virtual PC 上通过,杀毒软件提示病毒,但具体原因你知道的,请不要担心...

    王爽汇编中课程设计2

    《王爽汇编中课程设计2》是一份深入学习汇编语言的重要参考资料,它由知名计算机科学家王爽教授精心设计,旨在帮助学习者巩固和深化对汇编语言的理解。汇编语言是计算机科学的基础,是程序员与硬件直接对话的语言,...

    王爽汇编语言学习课程工具资料

    汇编语言是一种低级程序设计语言,它与机器语言密切相关,但比机器语言更易读、易写。通过学习汇编语言,我们可以了解到计算机指令集的基本结构,掌握如何直接控制硬件资源。《汇编语言王爽(第2版)》课后答案为读者...

    王爽汇编语言源码

    《王爽汇编语言》是一本深受程序员喜爱的经典教材,它深入浅出地介绍了汇编语言的基础知识和编程技巧。王爽教授以其独特的教学风格,将复杂的汇编语言概念简化,使得初学者也能轻松入门。这份"王爽汇编语言源码"包含...

    王爽 汇编语言 第二版 课程设计二

    王爽 汇编语言 第二版 从课程设计二 该程序需在虚拟机上实现,因为要对硬盘进行读写,如果在真机上实现,可能会损坏硬盘上数据。

    最强大的王爽汇编语言学习环境.rar

    "最强大的王爽汇编语言学习环境"是一个专为学习这门课程设计的资源包,它包含了一系列辅助学习的工具和资料,旨在提供一个全面、高效的实践平台。 首先,汇编语言是计算机科学中的低级编程语言,它与机器语言密切...

    王爽 汇编语言电子课件

    asmedu.net网通过提供汇编课程电子课件、专家技术讨论、学生实践辅导等方式为汇编语言教师教授汇编语言课程提供支持。本支持区发挥汇编网在计算机业内拥有的技术专家人脉的优势,为汇编教师教好汇编语言课程提供支持...

    王爽汇编语言课程教学第二版

    汇编语言是直接在硬件之上工作的编程语言,首先要了解硬件系统的结构,才能有效的应用汇编语言对其编程。

    王爽《汇编语言-清华出版社》& 动画演示

    《汇编语言》是王爽教授的经典著作,它深入浅出地介绍了...对于想要深入计算机科学领域的学习者来说,汇编语言是必修的一门基础课程,而王爽教授的书籍和配套动画演示无疑为学习者提供了一条高效且有趣的学习路径。

    《汇编语言第4版王爽》全部检测点、实验任务与课程设计答案

    除此之外还包含学习笔记(PDF版和GoodNotes5版),DOSBox0.74-3入门教程以及汇编环境搭建教程,功能强大的文本编辑器UE(支持官网更新),教材用到的所有文件以及汇编常用文件,例如masm5.0/debug.exe/link.exe/tc2.0....

    中南大学汇编语言实验报告(王爽)

    汇编语言的作业则更加注重理论与实践的结合,可能包括设计和分析更复杂的算法,或者解决特定的问题。作业一和作业二可能涵盖了一些新的主题,比如位操作、字符串处理或者处理特定的硬件功能。通过完成这些作业,学生...

    汇编语言_王爽_清华大学

    汇编语言是计算机科学中的基础课程之一,主要研究计算机内部如何通过一系列指令来执行运算、控制和决策任务。《汇编语言_王爽_清华大学》是一本由王爽编著的、针对初学者的教科书,旨在为读者提供系统学习汇编语言及...

    汇编语言王爽课程设计二源代码

    测试环境: VMWARE 11.1.2 MS-DOS

    王爽汇编语言课件及源码

    王爽的《汇编语言》是一本深受程序员和计算机科学爱好者欢迎的经典教材,它深入浅出地介绍了汇编语言的基础知识和实际应用。这个压缩包包含的资源是针对该书的辅助学习材料,旨在帮助读者更好地理解和掌握汇编语言的...

    王爽《汇编语言》第二版课程设计2,我的答案

    这次课程设计的任务是编写一个可以自行启动计算机,不需要在现有操作系统环境中运行的程序。 改程序的功能如下: ( 1 )列出功能选项,让用户通过键盘进行选择,界面如下: 1 ) reset pc ; 重新启动计算机 2...

    王爽汇编 电子书 pdf格式(带课后习题答案)

    1.2 汇编语言的产生 1.3 汇编语言的组成 1.4 存储器 1.5 指令和数据 1.6 存储单元 1.7 CPU对存储器的读写 1.8 地址总线 1.9 数据总线 1.10 控制总线 1.11 内存地址空间(概述) 1.12 主板 1.13 接口卡 1.14 ...

    王爽汇编语言实验代码

    《王爽汇编语言实验代码》是一份涵盖了汇编语言学习者在实验七及后续阶段可能需要用到的实践代码资源。这份压缩包由ster提供,它包括了以"e"开头的实验需求代码和以"t"开头的测试代码,以及一个名为"Course Design...

    王爽汇编语言,学习8086汇编语言相当好的参考资料

    《王爽汇编语言》是一本深受IT从业者和学习者喜爱的经典教材,专注于8086汇编语言的教学。这本书以其深入浅出的讲解方式,为读者提供了全面且易懂的汇编语言知识体系,是学习汇编语言的绝佳参考资料。 在8086汇编...

Global site tag (gtag.js) - Google Analytics