自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 ds cs探究

assume cs:codestack segmentdb 16 dup (0)stack endscode segmentmov ax,100hmov bx,100hmov cx,100hmov dx,100hmov ah,4chint 21hstart: mov ax,stack  mov ss,ax  mov sp,16

2015-05-01 09:10:40 501

原创 disi使用

介绍 si ,di 的功能  si , di  和 通用寄存器bx 有着相似的功能  当然,区别是有的 暂时我知道的就是  si, di 这两个与 bx功能相近的寄存器 不可以分解做两个 8 位的寄存器 就是说,只能当做 16 位 的寄存器 使用  assume cs:code,ds:datadata segmentdb 'welcome to masm!'db '

2015-05-01 09:09:05 911

原创 在代码中使用栈

功能:将程序中定义的数据逆序存放要搞清楚一点 .exe 文件加载的过程1.先是找到一段起始地址为 SA:0000 (即起始地址的偏移地址为0 )的容量足够的空闲内存区  SA值 正是放在 DS中的2.然后在这段内存区的前256个字节中,创建一个称为程序段前缀(PSP)的数据区,就是先用256个字节作为 PSP的数据区,这个东西暂时还不清楚是啥? 反正DOS 是要通过PSP来和被

2015-04-05 13:19:32 312

原创 栈实现内存单元内容改写程序中数据

assume cs:codesg功能:栈实现 用内存0:0 -- 0:15 单元中的内容改写程序中的数据assume cs:codesg codesg segmentdw 0123h,0234h,0345h,4h,5h,6h,7h,8hdw 0,0,0,0,0,0,0,0,0,0  ;其实此处我写的和答案不一样 (这个是答案)我感到其奇怪,为什么要开辟这么多的空间呢?

2015-04-05 13:17:33 1004 1

原创 第一条要执行的命令

可执行文件中的程序执行过程1. 由其他的程序(debug、command或者其他的程序)将可执行文件加载入内存2.设置CS:IP 指向程序的第一条要执行的指令(第一条指令就是程序的入口),使程序得意运行  !!就是这里出了问题! 怎样设置 CS:IP 的指向3.程序运行结束后,返回到加载者  就是 返回到 debug 或是 command 程序

2015-04-05 13:16:56 724

原创 复制程序

功能:将这个程序  MOV ax 4c00h 以上的程序部分 复制到 内存0:200 处assume cs:codecode segmentmov ax,code  ; 讲解 此处 code可以换成 CS 如果替换  会有差异 就是 MOV AX,CODE 是3个字节而 MOV AX,CS 占2个字节因为 CS 是寄存器 mov ds,ax

2015-04-05 13:15:21 383

原创 向内存中传送数据

功能:想内存 0:200 —— 0:23F 依次传递数据0——63  对应的十六进制就是0——3Fassume cs:codecode segmentmov ax,200hmov ds,axmov bx,0h   ;BX 从0 开始mov cx,40hs:  mov [bx],bl  ; BX 是从 0 开始的 我们所需的就是 从 0 开始的

2015-04-05 13:14:27 839

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除