汇编语言作业(六)

简介: 班级:  计算机14-1 姓名: 许恺   学号: 2014011329 日期: 2016.4.24    一、编写程序1.从键盘输入一个长度不超过50的字符串,然后将该字符串原样输出。要求:用A号功能调用输入,用9号功能调用输出。

班级:  计算机14-1 姓名: 许恺   学号: 2014011329 日期: 2016.4.24    

一、编写程序

1.从键盘输入一个长度不超过50的字符串,然后将该字符串原样输出。

要求:用A号功能调用输入,用9号功能调用输出。

提示:用A号功能调用输入后,要找到串中回车所在位置,并将它替换成$。

1)程序清单:

data segment

  str db 50,50 dup(?)

data ends

code segment

  assume cs:code,ds:data

 main proc far

start:

   mov ax,data

   mov ds,ax

   lea dx,str

   mov ah,0ah

   int 21h

   lea dx,str+2

   mov ah,09h

   int 21hmasm

   mov dl,'$'

   mov ah,02h

   int 21h

   mov ah,4ch

   int 21h

 main endp

code ends

end start

 

2)运行结果(截图):

 

 

2.数据段中存放着一个字数组,其元素均为无符号整数,求出最大值并将其以十进制形式显示到屏幕上。

要求:用LODSW对字数组进行访问。

1)程序清单:

data segment

  str dw 12h,13h,34h,02h,65h,12h,11h,23h,10h,19h

data ends

code segment

  assume cs:code,ds:data

 main proc far

start:

   mov ax,data

   mov ds,ax

   mov bx,0

   mov cx,9

   mov dx,str

l2:cmp dx,str[bx+2]

   ja l1

   mov dx,str[bx+2]

l1:add bx,2

   loop l2

   mov ax,dx

   mov cx,0

   mov bl,10

l4:div bl

   mov dl,ah

   push dx

   mov ah,0

   inc cx

   cmp al,0

   jbe l3

   jmp l4

l3:pop dx

   add dl,30h

   mov ah,02h

   int 21h

   loop l3

   mov ah,4ch

   int 21h

 main endp

code ends

end start

 

2)运行结果(截图):

 

二、编程体会

相比上次的编程感觉简单了一点,对于数组和循环条件的使用又熟练了一些,还需加强的是字节类和字类的数组的了解和使用,以及他的原理,还有堆栈的使用。

相关文章
汇编语言作业(三)计算这三个数的平均值
班级:  计算机14-1   姓名: 许恺   学号: 2014011329  日期: 2016.4.1           一、编写程序 1.设有三个无符号的个位数,计算这三个数的平均值(截尾取整),并将这个平均值显示在屏幕上。
2251 0
汇编语言作业(四)在屏幕上显示N个星号
班级:  计算机14-1  姓名: 许恺     学号: 2014011329  日期: 2016.4.8           一、编写程序 1.从键盘输入一个十进制个位数N(1-9),然后在屏幕上显示N个星号。
1015 0
汇编语言作业(五)
班级:  计算机14-1   姓名: 许恺  学号: 2014011329 日期: 2016.4.22           一、编写程序 1.设有字数组X、Y和Z,各有10个元素,计算: Z0=X0-Y0   Z1=X1-Y1  Z2=X2-Y2   Z3=X3+Y3   Z4=X4-Y4   Z5=X5-Y5   Z6=X6-Y6   Z7=X7+Y7  Z8=X8-Y8   Z9=X9-Y9 要求:X、Y两个数组的数均为两位十进制数,直接放在数据段中,无需从键盘输入,且两数相加或相减之后是一位或两位数(有可能是负数)。
1233 0
汇编语言作业(七)
班级:  计算机14-1  姓名:  许恺    学号:  2014011329日期: 2016.4.29           一、编写程序 1.从键盘输入一个不超过8的个位数,计算该数的阶乘,并以十进制制式输出。
770 0
汇编语言作业(2)输入两个位数,计算其乘积,并把乘积显示出来
班级:  计算机14-1   姓名: 许恺     学号: 2014011329  日期: 2016.3.29           一、编写程序 从键盘输入两个位数,计算其乘积,并把乘积显示出来(乘积用两位十进制形式显示,例如:2*3的结果是06,6*9的结果是54) 提示:利用1号功能调用从键盘输入的都是字符,例如,输入6,在AL中得到的是36H,要减掉30h才能得到数值6。
1889 0
|
6月前
|
存储 Unix 编译器
汇编语言----X86汇编指令
汇编语言----X86汇编指令
210 2
|
27天前
|
存储 移动开发 C语言
【ARM汇编速成】零基础入门汇编语言之指令集(三)
【ARM汇编速成】零基础入门汇编语言之指令集(三)
|
27天前
|
编译器 C语言 计算机视觉
【ARM汇编速成】零基础入门汇编语言之指令集(二)
【ARM汇编速成】零基础入门汇编语言之指令集(二)
118 0
|
6月前
|
存储 机器学习/深度学习 移动开发
汇编语言指令系列
汇编语言指令系列
585 0
几组汇编指令的比较
几组汇编指令的比较