灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:4703回复:0

[系统教程]DOS命令大全:Debug:m (move)命令详解

楼主#
更多 发布于:2012-08-31 19:02


将一个内存块中的内容复制到另一个内存块中。
MS-DOS命令语法
m range address
MS-DOS命令参数
range必需。指定要复制内容的内存区域的起始和结束地址,或起始地址和长度。address必需。指定要将 range 内容复制到该位置的起始地址。?显示 debug 子命令列表。MS-DOS命令注释

指定有效的 range 项使用含有 debug 子命令的 range 可指定一个内存范围。可以选择如下 range 格式:起始地址和终止地址,或者起始地址和范围长度(由 l 表示)。例如,如下语法都指定起始地址是 CS:100,16 字节的范围:
cs:100 10f
cs:100 l 10

指定有效的 address 项Address 是一个包含字母段记录的二位名称或一个四位字段地址加上一个偏移量。可以忽略段寄存器或段地址。CS 是下列“调试”子命令的默认段:a、g、l、t、u 和 w。所有其它命令的默认段是 DS。所有数值均为十六进制格式。段名和偏移量之间必须包含冒号。有效地址如下:
CS:0100
04BA:0100

复制数据如果正在复制的数据块中的地址未写入新数据,则它们会保持原来的数据不变。但是,如果目标块已经包含数据(就象它在覆盖副本操作中一样),则将改写该数据。(覆盖复制操作是指那些目标数据块部分内容覆盖原数据块部分内容的操作。

执行覆盖复制操作m 子命令可在不丢失目标地址中的数据的情况下,执行覆盖复制操作。将改写的地址内容首先复制。如果要将数据从高地址复制到低地址,则复制操作从原块的最低地址开始,向最高地址进行。反之,如果要将数据从低地址复制到高地址,复制操作从原块的最高地址开始,向最低地址进行。

MS-DOS命令范例
要复制从地址 CS:110 到 CS:510 范围中的内容,然后再复制从CS:10F 到 CS:50F 范围中的内容,并如此操作直到复制了从CS:100 到 CS:500 范围中的所有内容,请键入:
mcs:100 110 cs:500
要查看结果,请使用 d (dump) 子命令,此时要指定在 m 子命令中使用的目标地址。


喜欢0 评分0
游客

返回顶部