![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
汇编
duyiwuer2009
这个作者很懒,什么都没留下…
展开
-
汇编源码学习2-冒泡排序
;冒泡排序ASSUME CS:code1,SS:stack1,DS:data1data1 SEGMENT array DW 1,8,9,2,5,4,7,6,3,10data1 ENDS;stack1 SEGMENT STACK DB 256 DUP(?)stack1 ENDS;code1 SEGMENTstart: MOV AX,data1 MOV DS,AX原创 2011-12-18 16:05:46 · 532 阅读 · 0 评论 -
【汇编】DOS功能调用-常用输入输出
==========AH=01H,输入一个字符并回显AL=输入的字符说明:若按Enter键,吸收的是回车符——CR(0DH或13),换行符(LF)不吸收==========AH=07H,输入一个字符不回显AL=输入的字符==========AH=02H,输出一个字符DL=待输出的字符==========AH=09H,输出字符串DS:DX指向字符串原创 2011-12-18 15:51:56 · 2973 阅读 · 0 评论 -
汇编源码学习9-子程序设计-输入、输出大整数
;输入大整数,将其反序并由ASCII码值转换成数值,输入以非数字字符为结束符。;输出大整数,将大整数反序,并转为ASCII码ASSUME SS:stack1stack1 SEGMENT STACK DB 256 DUP(?)stack1 ENDS;子程序1:输入大整数,将其反序并由ASCII码值转换成数值,输入以非数字字符为结束符。;入口参数:ES,DI,SI;ES存放主函数的原创 2011-12-21 15:47:41 · 967 阅读 · 0 评论 -
汇编源码学习11-子函数模块-输出大整数
;子程序2:输出大整数,将大整数反序,并转为ASCII码;入口参数:ES,DI,SI;ES:主调函数的数据段段地址;DI:主调函数中大整型变量的首地址;SI:主调函数中大整型长度变量的地址。;出口:修改大整型变量;用到的寄存器:AX,DS,CX,DI,SI,DX,ESdata3 SEGMENT addrBI2 DW ? ;存放传递过来的大整型的首地址 addrLEN2 DW ?原创 2011-12-21 15:51:38 · 740 阅读 · 0 评论 -
汇编源码学习7-子程序设计-寄存器传递参数
;寄存器传递参数;从键盘输入一组字符,直到输入“0”为止,编写子程序,完成如下功能:;若输入的是小写字符,转换成大写,最后将字符串输出。;主程序data1 SEGMENT string DB 100 DUP(?)data1 ENDS;stack1 SEGMENT STACK DB 256 DUP(?)stack1 ENDS;code1 SEGMENT ASSUME原创 2011-12-20 11:58:00 · 1048 阅读 · 0 评论 -
汇编源码学习10-子程序调用-高精度整数加法
;高精度大整数相加ASSUME SS:stack1stack1 SEGMENT STACK DB 256 DUP(?)stack1 ENDS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;子函数1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;子程序1:输入大整数,将其反序并由ASCII码值转换成数值,输原创 2011-12-21 15:49:48 · 801 阅读 · 0 评论 -
汇编源码学习12-子函数模块-输入大整数
;子程序1:输入大整数,将其反序并由ASCII码值转换成数值,输入以非数字字符为结束符。;入口参数:ES,DI,SI;ES存放主函数的段地址,DI存放待处理大整型字符串的首地址,SI存放主调函数中长度变量的地址。;出口:修改大整型和长度变量的值;用到的寄存器:AX,DS,DI,CX,BX,SI,ESdata2 SEGMENT temp DB 128 DUP(0) addrBI D原创 2011-12-21 15:52:47 · 641 阅读 · 0 评论 -
汇编源码学习13-子函数模块-输入双字节整数
;子函数:输入双字节整数。值保存在主调函数传递过来的变量中,非数字字符都是结束符。;入口参数:DS传递主调函数的段地址;DI传递双字节变量的地址;用到的寄存器:ES,AX,DS,DI,SI,CX,BX,DX;无符号双字节整型的范围0-65535data2 SEGMENT temp DB 32 DUP(0) addr1 DW ? temp2 DW ?data2 ENDScod原创 2011-12-21 21:29:41 · 1489 阅读 · 0 评论 -
汇编源码学习14-子函数模块-输出双字节整数
;子函数:输出双字节整数;入口参数:AX传递要输出的双字节整数;用到的寄存器:AX,DS,BX,DX,DI,SIdata3 SEGMENT str DB 32 DUP('$(编译时去除此处括号)')data3 ENDScode3 SEGMENTOutINT PROC FAR ASSUME CS:code3,DS:data3 PUSH AX PUSH BX PUSH原创 2011-12-21 21:31:13 · 1473 阅读 · 0 评论 -
汇编源码学习8-FAR-子程序远调用
;将AX中的值以十进制形式输出ASSUME DS:data1,SS:stack1data1 SEGMENT decimal DB 6 DUP(?),'$(编译时去掉此处括号)' temp DB 6 DUP(?)data1 ENDS;stack1 SEGMENT STACK DB 256 DUP(?)stack1 ENDS;不同段的子程序——output in decim原创 2011-12-20 12:00:00 · 2950 阅读 · 0 评论 -
汇编语言在线学习
汇编语言程序设计:http://student.zjzk.cn/course_ware/caiweb/huibian/index.htm子程序设计:http://student.zjzk.cn/course_ware/caiweb/huibian/index7.htm其他在线资料:http://wenku.baidu.com/view/3e4ab3a3b0717fd5360cd原创 2011-12-19 22:39:52 · 816 阅读 · 0 评论 -
汇编源码学习5-输入字符串
;输入9个以内的字符并输出data1 SEGMENT string DB 10,?,10 DUP('$(编译时去掉此处括号中的内容)') ;第1个单元存放限制输入的字符个数,含回车符13 ;第2个单元存放实际输入的字符个数,不含回车符13 ;实际的字符串从第3个单元开始data1 ENDS;stack1 SEGMENT STACK DB 2原创 2011-12-18 16:29:51 · 798 阅读 · 0 评论 -
汇编源码学习4-输入字符与输出字符
;输入字符与输出字符data1 SEGMENT char DB ?data1 ENDS;stack1 SEGMENT STACK DB 256 DUP(?)stack1 ENDS;code1 SEGMENT ASSUME CS:code1,DS:data1,SS:stack1start: MOV AX,data1 MOV DS,AX ; MOV AH原创 2011-12-18 16:16:18 · 537 阅读 · 0 评论 -
汇编源码学习3-输出字符串
;输出字符串data1 SEGMENT string DB '0123456789$(编译时去掉此处括号中的内容)'data1 ENDS;stack1 SEGMENT STACK DB 256 DUP(?)stack1 ENDS;code1 SEGMENT ASSUME CS:code1,DS:data1,SS:stack1start: MOV AX,data1原创 2011-12-18 16:24:08 · 499 阅读 · 0 评论 -
汇编源码学习1-找出最大的数
;找出最大的数,存放在ALASSUME CS:code1,SS:stack1,DS:data1data1 SEGMENT array DB 1,8,9,2,5,4,7,6,3,10data1 ENDS;stack1 SEGMENT STACK;这里必须加STACK DB 256 DUP(?)stack1 ENDS;code1 SEGMENTentry: ;MOV AX,原创 2011-12-18 16:02:15 · 1114 阅读 · 0 评论 -
汇编源码学习6-改进的冒泡排序
;改进的冒泡排序;算法思想:循环走一趟,如果没有交换操作,说明数组已经有序ASSUME CS:code1,SS:stack1,DS:data1data1 SEGMENT array DW 1,8,9,2,5,4,7,6,3,10 flag DB 0 ;用于改进冒泡排序data1 ENDS;stack1 SEGMENT STACK DB 256 DUP(?)stack1原创 2011-12-18 17:07:19 · 604 阅读 · 0 评论 -
【汇编】常用debug命令
debug *.exe==========R——register-r:显示寄存器内容-r ax:修改ax的内容==========U——unassemble,反汇编,显示汇编指令-u:默认显示32个字节-u[address]:-u0,从CS:0处显示-u[range]:-u0 10,显示CS:0-CS:10之间的代码==========D——du原创 2011-12-18 15:53:58 · 770 阅读 · 0 评论