ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

实验4

2021-12-17 01:32:11  阅读:176  来源: 互联网

标签:code mov si 实验 ax data ds


可以

从键盘上读入一个字符存入ds:[si],将字符与‘#‘进行比较。如果不是’#‘则继续循环,如果是’#‘则跳出到next
输出换行
输出字符串

assume cs:code, ds:data

data segment
	x dw 91, 792, 8536, 65521, 2021
	len equ $ - x
data ends

code segment 
start:
	mov ax, data
	mov ds, ax
	mov cx, len / 2
	mov bp, 0
S:  mov  ax, ds:[bp]
	push cx
	call printNumber
	call printSpace
	pop cx
	add bp, 2
	loop S

	mov ah, 4ch
    int 21h

printNumber:
	mov si, 0
	mov bx, 10
L1:	mov dx, 0
	div bx
	push dx
	inc si
	cmp ax, 0
	jne L1
	mov cx, si
	mov ah, 2
L2:	pop dx
	add dl, 48
	int 21h
	loop L2
	ret

printSpace:
	mov ah, 2
	mov dl, 32
	int 21h
	ret
code ends
end start

assume cs:code, ds:data

data segment
	str db "assembly language, it's not difficult but tedious"
	len equ $ - str
data ends

code segment 
start:
	mov ax, data
	mov ds, ax
	mov si, 0
	mov cx, len
	call strupr

	mov ah, 4ch
    int 21h

strupr:
L1:	cmp BYTE PTR ds:[si], 97
	jl L2
	cmp BYTE PTR ds:[si], 122
	jg L2
	sub BYTE PTR ds:[si], 32
L2:	inc si
	loop L1
	ret

code ends
end start

标签:code,mov,si,实验,ax,data,ds
来源: https://www.cnblogs.com/wxhwqy/p/15700631.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有