首页 > 编程语言 >汇编语言王爽实验七

汇编语言王爽实验七

时间:2024-09-27 21:51:31浏览次数:8  
标签:汇编语言 mov si add 实验 es ax bx 王爽

代码如下

assume cs:codesg
data segment
	
	db '1975','1976','1977','1978','1979','1980','1981','1982','1983'
	db '1984','1985','1986','1987','1988','1989','1990','1991','1992'
	db '1993','1994','1995'
	;21个字符串,每个字符串占四个字节,总长度为84字节,尾编号用十进制表示为83,16进制表示为53H
	; data:0~data:53H
	
	dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
	dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000
	;21个双字型数据,共42个字,84个字节,尾编号用十进制表示为167,16进制表示为A7H
	;data:54H~data:A7H

	dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226
	dw 11542,14430,15257,17800
	;21个字型数据,共42个字节,尾编号用十进制表示为209,16进制表示为D1H
	;data:A8H~data:D1H

data ends

table segment
	db 21 dup ('year summ ne ?? ')
	; 21行字符串,每行16个字节
table ends

codesg segment
	start:	mov ax,data
			mov ds,ax
			mov ax,table
			mov es,ax
			mov bx,0
			mov si,0
			; a循环解决了年份和紧随的空格问题,搞定了每行的0~4这5个编号的内容
			mov cx,21
		a:	mov ax,[bx]
			mov es:[si+0],ax
			add bx,2
			mov ax,[bx]
			mov es:[si+2],ax
			mov byte ptr es:[si+4],20H			;空格的ascii为20H
			add bx,2
			add si,16
			loop a
			
			mov bx,0
			mov si,0
			; b循环解决了收入和紧随的空格问题,搞定了每行的5~9这5个编号的内容
			mov cx,21
		b:	mov ax,54H[bx]
			mov es:[si+5],ax
			add bx,2
			mov ax,54H[bx]
			mov es:[si+7],ax
			mov byte ptr es:[si+9],20H			;空格的ascii为20H
			add bx,2
			add si,16
			loop b
			
			mov bx,0
			mov si,0
			; c循环解决了雇员和紧随的空格问题,搞定了每行的A、B、C这3个编号的内容
			mov cx,21
		c:	mov ax,0A8H[bx]
			mov es:[si+0AH],ax
			;	记得吗,汇编语言中数据不能以字母开头,否则在这里AH到底是数据还是寄存器呢
			mov byte ptr es:[si+0CH],20H
			add bx,2
			add si,16
			loop c
			
			mov bx,0
			mov di,0
			mov si,0
			mov cx,21
			; d循环解决了计算人均收入和紧随的空格问题,搞定了每行的D、E、F这3个编号的内容
		d:	mov ax,54H[bx]
			add bx,2
			mov dx,54H[bx]
			add bx,2
			div word ptr 0A8H[di]
			add di,2
			
			mov es:[si+0DH],ax
			mov byte ptr es:[si+0FH],20H
			add si,16
			loop d
			
			mov ax,4c00H
			int 21H
			
codesg ends
end start

标签:汇编语言,mov,si,add,实验,es,ax,bx,王爽
From: https://blog.csdn.net/2301_81570594/article/details/142547604

相关文章

  • 实验1
    源代码1:#include<stdio.h>intmain(){printf("0\n");printf("<H>\n");printf("II\n");return0;}#include<stdio.h>intmain(){printf("0\n");printf("......
  • 实验 1
    实验任务1——打印小人单个#include<stdio.h>voidmain(){ printf("O\n"); printf("<H>\n"); printf("II\n");}一列#include<stdio.h>voidmain(){ printf("O\n"); printf("<H>\......
  • 丹摩智算(damodel)部署stable diffusion实验
    名词解释:丹摩智算(damodel):是一款带有RTX4090,Tesla-P40等显卡的公有云服务器。stablediffusion:是一个大模型,可支持文生图,图生图,文生视频等功能一.实验目标注册丹摩智算(damodel)账户,创建带有显卡(Tesla-P40)的公有云服务器,系统为:ubuntu22.04_tensorflow2.1,通过ssh协议连接到公......
  • python基于flask的实验室设备管理系统的设计与实现 99xa5
    目录python语言框架介绍技术可行性具体实现截图技术栈系统的稳定性和可维护性核心代码部分展示详细视频演示系统测试源码获取方式python语言Python具有强大的优势,通过简洁的语法和类库进行操作。而且Python提供了许多的控制语句,比如if语句、for语句,while语句。在数......
  • 实验1 C语言输入输出和简单程序编写
    任务11#include<stdio.h>2intmain()3{4printf("00\n");5printf("<H><H>\n");6printf("IIII");78return0;9} 1#include<stdio.h>2intmain()3{4......
  • 实验1
    任务11.1#include<stdio.h>intmain(){inti=1;while(i<3){printf("o\n");printf("<H>\n");printf("II\n");i++;}return0;}  1.2#include<stdio.h>intma......
  • 实验任务一
    实验一:task1_1的源代码:1#include<stdio.h>2intmain()3{4printf("o\n");5printf("<H>\n");6printf("II\n");7printf("o\n");8printf("<H>\n");9......
  • 实验文档1
    关于第一次实践课作业实验结论task1_1.c1#include<stdio.h>2#include<stdlib.h>3intmain()4{5printf("O\n");6printf("<H>\n");7printf("II\n");8printf("O\n");9p......
  • 实验1
    任务1源代码:1#include<stdio.h>2intmain()3{4printf("o\n");5printf("<H>\n");6printf("II\n");7printf("o\n");8printf("<H>\n");9print......
  • 实验1
    任务1:源代码1.1:1#include<stdio.h>2intmain()3{4printf("O\n");5printf("<H>\n");6printf("II\n");7printf("O\n");8printf("<H>\n");9......