学习笔记(7)--对“一道基本的汇编语言题目”的改进
2013-06-18 11:14
204 查看
题目描述:有一个首地址为mem的100个字的数组,试编制程序删除数组中所有为零的项,并将后续项向前压缩,最后将数组的剩余部分补上零。
代码:
在第一次写的这道题,是比较乱的,现在从新设计了一下。
代码:
data segment data1 dw 1,0,2,3,0,0,4,5,6,0 dw 1,0,2,3,0,0,4,5,6,0 dw 1,0,2,3,0,0,4,5,6,0 dw 1,0,2,3,0,0,4,5,6,0 dw 1,0,2,3,0,0,4,5,6,0 dw 1,0,2,3,0,0,4,5,6,0 dw 1,0,2,3,0,0,4,5,6,0 dw 1,0,2,3,0,0,4,5,6,0 dw 1,0,2,3,0,0,4,5,6,0 dw 1,0,2,3,0,0,4,5,6,0 data ends code segment assume cs:code, ds:data start: mov ax,data mov ds,ax mov cx,100 mov bx,0 mov si,(100-1)*2 loop1: cmp data1[bx],0 jz delete add bx,2 loop loop1 jmp output delete: mov di,bx loop2: cmp di,si jae next mov ax,data1[di+2] mov data1[di],ax add di,2 jmp loop2 next: mov data1[si],word ptr 0 loop loop1 output: mov cx,100 mov bx,0 loop3: mov dx,data1[bx] add dx,30H mov ah,02H int 21h add bx,2 mov dl,' ' mov ah,02h int 21h loop loop3 mov ah,4CH int 21h code ends end start
在第一次写的这道题,是比较乱的,现在从新设计了一下。
相关文章推荐
- 汇编语言学习笔记(8)——数据处理的基本问题
- 汇编语言学习笔记-创建最基本的windows窗体
- 一道基本的汇编语言题目
- 汇编语言学习笔记(8)——数据处理的基本问题
- 汇编语言第八章学习笔记——数据处理的两个基本问题
- 32位汇编语言学习笔记(44)--显示命令行参数(3)
- 汇编语言学习笔记(五)bx和loop指令
- [置顶] [汇编语言学习笔记][第一章基础知识]
- 汇编语言学习笔记2
- 汇编语言基础知识学习笔记(二)
- [置顶] [汇编语言学习笔记][第七章更灵活的定位内存的方法]
- [置顶] [汇编学习笔记][第八章数据处理的两个基本问题]
- 汇编语言:基础知识(第一章)——学习笔记
- 汇编语言学习笔记(十二)-浮点指令
- 汇编语言学习笔记(八)
- 汇编语言学习笔记(1)
- (2011.09.08)《C++ Primer》第一部分学习笔记汇总——基本语言
- 32位汇编语言学习笔记(28)--一个简单的光标控制程序
- 汇编语言学习笔记(二)
- 汇编语言学习笔记(6)——包含多个段的程序