汇编实验——用表格形式显示字符串
来源:互联网 发布:手机版我的世界家具js 编辑:程序博客网 时间:2024/05/06 21:47
实验代码,ascii.asm如下:
;*****************************************
datarea segment
recol db 13,10,'$'
space db '$'
datarea ends
;*****************************************
prognam segment
assumecs:prognam,ds:datarea
;------------------------------------------
main proc far
start:
push ds
sub ax,ax
push ax
mov ax,datarea
mov ds,ax
mov dl,10h
mov cx,15
;------------------------------------------
outside:
push cx
mov cx,16
;-------------------------------------------
inside:
mov ah,02h
int 21h
inc dl
push dx ;压入显示ASCII字符的dx,该段为显示空格
lea dx,space
mov ah,09h
int 21h
pop dx ;弹出dx,循环inside共16次,即一行显示16个字符
loop inside
push dx ;压入显示ASCII字符的dx,该段为显示换行
lea dx,recol
mov ah,09h
int 21h
pop dx ;弹出dx,继续输出其他字符
pop cx ;弹出cx,由15逐次减一实现15行的输出
loop outside
ret
main endp
;----------------------------------------------------
prognam ends
;****************************************************
end start
该实验是用表格形式显示字符,显示ASCII码对应的字符并不难,给dl寄存器赋10h,利用功能调用02h即可显示,然后给dl不断増1,循环显示输出即可。但题目要求用表格形式,输出15*16的字符,且字符之间有空格。所以需要在数据段datarea中定义换行recol和空格space,利用功能调用09h将其显示。另外需要注意的是,因为实际是一个ASCII码字符一个空格交替显示,所以使用一次02h功能调用后需要将dx压入栈中保存,再将recol或space的有效地址赋给dx,完成之后的09h功能调用,然后再弹出dx覆盖之前的地址值。
因为02h的功能调用是dl=输出字符,所以可以输出的ascii码无法超过FFh
- 汇编实验——用表格形式显示字符串
- 用表格形式显示字符 汇编实验
- 汇编实验:用表格形式显示字符
- 汇编实验题之用表格形式显示ASCII字符
- 汇编实验——查找匹配字符串
- 汇编实验-10-1 显示字符串
- 【汇编】汇编显示字符串
- 汇编字符串匹配实验
- 分析表格形式的实验数据
- 汇编——逆序显示输入的字符串
- 汇编——在屏幕中间显示不同颜色的字符串
- 汇编->字符串显示
- 汇编实验题~~~显示九九乘法表
- 汇编实验题~~~显示菱形
- 汇编实验:查找匹配字符串
- 王爽《汇编语言》实验10.1——显示字符串
- 对话框以字符串形式显示
- sql函数中将表格形式转化为字符串形式
- 从西游记领悟团队建设
- 2016.10.25
- NSBundle读写文件
- Matlab通信仿真——simulink入门
- RTC功能
- 汇编实验——用表格形式显示字符串
- 设置gitignore 全局忽略DS_Store
- 小白使用github
- greenDao及各框架使用
- 程序员之路第55天——庆祝自己的第一个1024节
- LeetCode----49. Group Anagrams(颠倒字母的组合)
- python之os.path模块
- 安卓开发之Paint画笔
- ZooKeeper之(三)工作原理