A. 汇编call 命令 解析
不同的CPU可能有不同的规定。下面只说常见的简单CPU的指令。
常见的CPU的CALL指令(“调用”指令)的功能,就是以下两点:
(1)将下一条指令的所在地址(即当时程序计数器PC的内容)入栈,
(2)并将子程序的起始地址送入PC(于是CPU的下一条指令就会转去执行子程序)。
而子程序结尾处通常都要编写一条RET指令(“返回”指令),RET指令的功能就是一条:
从栈中取出一条数据送入PC。
从上面叙述可以看出,正常情况下,RET指令从栈中取出的一条数据,也就是当初被CALL指令所入栈的下一条指令的所在地址。
因此,RET指令后,CPU的下一条指令就回去执行当初的CALL指令的下一条了。
至于其他操作,如sweetsugar123兄所说的“保护寄存器现场”等等,一般并非CALL指令的功能,而是需要程序员自行在子程序内编写程序实现的。这些操作通常也需要用到堆栈。基于堆栈的“后进先出”性质,这些操作可以不干扰CALL和RET指令的“保存返回地址”的功能。
B. 求这句cmd命令的解析
CMD命令:开始->运行->键入cmd或command(在命令行里可以看到系统版本、文件系统版本)或是home键+R调出
CMD命令锦集
1、 gpedit、msc-----组策略
2、 sndrec32-------录音机
3、 Nslookup-------IP地址侦测器 ,是一个 监测网络中 DNS 服务器是否能正确实现域名解析的命令行工具。 它在 Windows NT/2000/XP 中均可使用 , 但在 Windows 98 中却没有集成这一个工具。
4、 explorer-------打开资源管理器
5、 logoff---------注销命令
6、 shutdown-------60秒倒计时关机命令
7、 lusrmgr、msc----本机用户和组
8、 services、msc---本地服务设置
9、 oobe/msoobe /a----检查XP是否激活
10、 notepad--------打开记事本
11、 cleanmgr-------垃圾整理
12、 net start messenger----开始信使服务
13、 compmgmt、msc---计算机管理
14、 net stop messenger-----停止信使服务
15、 conf-----------启动netmeeting
16、 dvdplay--------DVD播放器
17、 charmap--------启动字符映射表
18、 diskmgmt、msc---磁盘管理实用程序
19、 calc-----------启动计算器
20、 dfrg、msc-------磁盘碎片整理程序
21、 chkdsk、exe-----Chkdsk磁盘检查
22、 devmgmt、msc--- 设备管理器
23、 regsvr32 /u *、dll----停止dll文件运行
24、 drwtsn32------ 系统医生
25、 rononce -p----15秒关机
26、 dxdiag---------检查DirectX信息
27、 regedt32-------注册表编辑器
28、 Msconfig、exe---系统配置实用程序
29、 rsop、msc-------组策略结果集
30、 mem、exe--------显示内存使用情况
31、 regedit、exe----注册表
32、 winchat--------XP自带局域网聊天
33、 progman--------程序管理器
34、 winmsd---------系统信息
35、 perfmon、msc----计算机性能监测程序
36、 winver---------检查Windows版本
37、 sfc /scannow-----扫描错误并复原
38、 taskmgr-----任务管理器(2000/xp/2003
40、 wmimgmt、msc----打开windows管理体系结构(WMI)
41、 wupdmgr--------windows更新程序
42、 wscript--------windows脚本宿主设置
43、 write----------写字板
45、 wiaacmgr-------扫描仪和照相机向导
46、 winchat--------XP自带局域网聊天
cmd命令
C. linux命令解析
这个是编译安装的时候--prefix用来指定安装目录 其实之后就是make 产生makefile文件,然后make install 编译安装就完了
D. 如何使用dig 命令查看我的解析
Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具
DNS 查询实用程序。
一个典型的 dig 查询如下
dig @server name type
dig @server xxx.com.cn.
语法
dig [@server] [-b address] [-c class] [-f filename] [-k filename] [ -n ][-p port#] [-t type] [-x addr] [-y name:key] [name] [type] [class] [queryopt...]
dig [-h]
dig [global-queryopt...] [query...]
A 地址记录(Ipv4)
AAAA 地址记录(Ipv6)
AFSDB Andrew文件系统数据库服务器记录
ATMA ATM地址记录
CNAME 别名记录
HINFO 硬件配置记录,包括CPU、操作系统信息
ISDN 域名对应的ISDN号码
MB 存放指定邮箱的服务器
MG 邮件组记录
MINFO 邮件组和邮箱的信息记录
MR 改名的邮箱记录
MX 邮件服务器记录
NS 名字服务器记录
PTR 反向记录
RP 负责人记录
RT 路由穿透记录
SRV TCP服务器信息记录
TXT 域名对应的文本信息
X25 域名对应的X.25地址记录
E. 如何在C++中解析命令行参数
C++内的命令行参数储存在main函数中的argv参数中 而argc储存了命令行参数个数 由系统在执行时动态分配
实例:
#include<cstdio>
/*
*argc:命令行参数个数
*argv:储存了所有命令行参数,其中第一个(即argv[0])为当前可执行文件名
*/
intmain(intargc,char*argv[])
{
inti;
for(i=0;i<argc;i++)
if(argv[i]=="test")
puts("Foundargument'test'");
return0;
}
F. 如何解析命令字符串
用find查找逗号, 然后根据返回的索引取得命令和参数.
size_type find(
value_type _Ch,
size_type _Off = 0
) const;
size_type find(
const value_type* _Ptr,
size_type _Off = 0
) const;
size_type find(
const value_type* _Ptr,
size_type _Off = 0,
size_type _Count
) const;
size_type find(
const basic_string& _Str,
size_type _Off = 0
) const;
如果是合法命令, 函数返回TRUE,否则false
op是返回的参数字符串
bool checkcmd(string cmd, string & op) {
//cmd = "status,s";
int index = cmd.find(',');
if (index==string::npos) {
// not found
op = "";
if (cmd=="status") {
return TRUE;
}
else {
return FALSE;
}
}
else {
// found
// cut string before op
string sub = cmd.Substring(index+1);
if (sub=='s') {
op = sub;
return TRUE;
}
else {
op = "";
return FALSE;
}
}
}
G. Linux 命令解析器 解析命令
有点类似词法分析的过程但比词法分析简单,你画个流程图就知道了。
找本编译原理的书专门看看词法分析的过程会帮助你更深入理解这类问题
H. Dos命令解析
DOS网络命令解析
Arp
显示和修改“地址解析协议”(ARP) 所使用的到以太网的 IP 或令牌环物理地址翻译表。该命令只有在安装了 TCP/IP 协议之后才可用。
arp -a [inet_addr] [-N [if_addr]
arp -d inet_addr [if_addr]
arp -s inet_addr ether_addr [if_addr]
参数
-a
通过询问 TCP/IP 显示当前 ARP 项。如果指定了 inet_addr,则只显示指定计算机的 IP 和物理地址。
-g
与 -a 相同。
inet_addr
以加点的十进制标记指定 IP 地址。
-N
显示由 if_addr 指定的网络界面 ARP 项。
if_addr
指定需要修改其地址转换表接口的 IP 地址(如果有的话)。如果不存在,将使用第一个可适用的接口。
-d
删除由 inet_addr 指定的项。
-s
在 ARP 缓存中添加项,将 IP 地址 inet_addr 和物理地址 ether_addr 关联。物理地址由以连字符分隔的6 个十六进制字节给定。使用带点的十进制标记指定 IP 地址。项是永久性的,即在超时到期后项自动从缓存删除。
ether_addr
指定物理地址。
Finger
在运行 Finger 服务的指定系统上显示有关用户的信息。根据远程系统输出不同的变量。该命令只有在安装了 TCP/IP 协议之后才可用。
finger [-l] [user]@computer[...]
参数
-l
以长列表格式显示信息。
user
指定要获得相关信息的用户。省略用户参数以显示指定计算机上所有用户的信息:
@computer
Ftp
将文件传送到正在运行 FTP 服务的远程计算机或从正在运行 FTP 服务的远程计算机传送文件(有时称作 daemon)。Ftp可以交互使用。单击“相关主题”列表中的“ftp 命令”以获得可用的“ftp”子命令描述。该命令只有在安装了 TCP/IP 协议之后才可用。Ftp 是一种服务,一旦启动,将创建在其中可以使用ftp 命令的子环境,通过键入 quit 子命令可以从子环境返回到 Windows 2000 命令提示符。当 ftp 子环境运行时,它由 ftp 命令提示符代表。
ftp [-v] [-n] [-i] [-d] [-g] [-s:filename] [-a] [-w:windowsize] [computer]
参数
-v
禁止显示远程服务器响应。
-n
禁止自动登录到初始连接。
-i
多个文件传送时关闭交互提示。
-d
启用调试、显示在客户端和服务器之间传递的所有 ftp 命令。
-g
禁用文件名组,它允许在本地文件和路径名中使用通配符字符(* 和 ?)。(请参阅联机“命令参考”中的 glob 命令。)
-s: filename
指定包含 ftp 命令的文本文件;当 ftp 启动后,这些命令将自动运行。该参数中不允许有空格。使用该开关而不是重定向(> )。
-a
在捆绑数据连接时使用任何本地接口。
-w:windowsize
替代默认大小为 4096 的传送缓冲区。
computer
指定要连接到远程计算机的计算机名或 IP 地址。如果指定,计算机必须是行的最后一个参数。
Nbtstat
该诊断命令使用 NBT(TCP/IP 上的 NetBIOS)显示协议统计和当前 TCP/IP 连接。该命令只有在安装了TCP/IP 协议之后才可用。
nbtstat [-a remotename] [-A IP address] [-c] [-n] [-R] [-r] [-S] [-s] [interval]
参数
-a remotename
使用远程计算机的名称列出其名称表。
-A IP address
使用远程计算机的 IP 地址并列出名称表。
-c
给定每个名称的 IP 地址并列出 NetBIOS 名称缓存的内容。
-n
列出本地 NetBIOS 名称。“已注册”表明该名称已被广播 (Bnode) 或者 WINS(其他节点类型)注册。
-R
清除 NetBIOS 名称缓存中的所有名称后,重新装入 Lmhosts 文件。
-r
列出 Windows 网络名称解析的名称解析统计。在配置使用 WINS 的 Windows 2000 计算机上,此选项返回要通过广播或WINS 来解析和注册的名称数。
-S
显示客户端和服务器会话,只通过 IP 地址列出远程计算机。
-s
显示客户端和服务器会话。尝试将远程计算机 IP 地址转换成使用主机文件的名称。
interval
重新显示选中的统计,在每个显示之间暂停 interval 秒。按 CTRL+C 停止重新显示统计信息。如果省略该参数,nbtstat 打印一次当前的配置信息。
Netstat
显示协议统计和当前的 TCP/IP 网络连接。该命令只有在安装了 TCP/IP 协议后才可以使用。
netstat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval]
参数
-a
显示所有连接和侦听端口。服务器连接通常不显示。
-e
显示以太网统计。该参数可以与 -s 选项结合使用。
-n
以数字格式显示地址和端口号(而不是尝试查找名称)。
-s
显示每个协议的统计。默认情况下,显示 TCP、UDP、ICMP 和 IP 的统计。-p 选项可以用来指定默认的子集。
-p protocol
显示由 protocol 指定的协议的连接;protocol 可以是 tcp 或 udp。如果与 -s 选项一同使用显示每个协议的统计,protocol 可以是 tcp、udp、icmp 或 ip。
-r
显示路由表的内容。
interval
重新显示所选的统计,在每次显示之间暂停 interval 秒。按 CTRL+B 停止重新显示统计。如果省略该参数,netstat 将打印一次当前的配置信息。
Ping
验证与远程计算机的连接。该命令只有在安装了 TCP/IP 协议后才可以使用。
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-j computer-list] | [-k computer-list] [-w timeout] destination-list
参数
-t
Ping 指定的计算机直到中断。
-a
将地址解析为计算机名。
-n count
发送 count 指定的 ECHO 数据包数。默认值为 4。
-l length
发送包含由 length 指定的数据量的 ECHO 数据包。默认为 32 字节;最大值是 65,527。
-f
在数据包中发送“不要分段”标志。数据包就不会被路由上的网关分段。
-i ttl
将“生存时间”字段设置为 ttl 指定的值。
-v tos
将“服务类型”字段设置为 tos 指定的值。
-r count
在“记录路由”字段中记录传出和返回数据包的路由。count 可以指定最少 1 台,最多 9 台计算机。
-s count
指定 count 指定的跃点数的时间戳。
-j computer-list
利用 computer-list 指定的计算机列表路由数据包。连续计算机可以被中间网关分隔(路由稀疏源)IP 允许的最大数量为9。
-k computer-list
利用 computer-list 指定的计算机列表路由数据包。连续计算机不能被中间网关分隔(路由严格源)IP 允许的最大数量为9。
-w timeout
指定超时间隔,单位为毫秒。
destination-list
指定要 ping 的远程计算机。
Rcp
在 Windows 2000 计算机和运行远程外壳端口监控程序 rshd 的系统之间复制文件。rcp 命令是一个连接命令,从Windows 2000 计算机发出该命令时,也可以用于其他传输在两台运行 rshd 的计算机之间复制文件。rshd 端口监控程序可以在 UNIX 计算机上使用,而在Windows 2000 上不能使用,所以 Windows 2000 计算机仅可以作为发出命令的系统参与。远程计算机必须也通过运行 rshd 提供 rcp 实用程序。
rcp [-a | -b] [-h] [-r] source1 source2 ... sourceN destination
参数
-a
指定 ASCII 传输模式。此模式在传出文件上将回车/换行符转换为回车符,在传入文件中将换行符转换为回车/换行符。该模式为默认的传输模式。
-b
指定二进制图像传输模式。没有执行回车/换行符转换。
-h
传输 Windows 2000 计算机上标记为隐藏属性的源文件。如果没有该选项,在 rcp 命令行上指定隐藏文件的效果与文件不存在一样。
-r
将源的所有子目录内容递归复制到目标。source 和 destination 都必须是目录,虽然即使源不是目录,使用-r 也能够工作。但将没有递归。
source 和 destination
格式必须为 [computer[.user]:]filename。如果忽略了 [computer[.user]:] 部分,计算机将假定为本地计算机。如果省略了 [.user] 部分,将使用当前登录的 Windows 2000 用户名。如果使用了完全合格的计算机名,其中包含句点(.) 分隔符,则必须包含 [.user]。否则,计算机名的最后部分将解释为用户名。如果指定了多个源文件,则destination 必须是目录。
如果文件名不是以 UNIX 的正斜杠 (/) 或 Windows 2000 系统的反斜杠 (\) 打头,则假定相对于当前的工作目录。在Windows 2000 中,这是发出命令的目录。在远程系统中,这是远程用户的登录目录。句点 (.) 表示当前的目录。在远程路径中使用转义字符(\、" 或 '),以便在远程计算机中使用通配符。
Rexec
在运行 REXEC 服务的远程计算机上运行命令。rexec 命令在执行指定命令前,验证远程计算机上的用户名,只有安装了TCP/IP 协议后才可以使用该命令。
rexec computer [-l username] [-n] command
参数
computer
指定要运行 command 的远程计算机。
-l username
指定远程计算机上的用户名。
-n
将 rexec 的输入重定向到 NULL。
command
指定要运行的命令。
Route
控制网络路由表。该命令只有在安装了 TCP/IP 协议后才可以使用。
route [-f] [-p] [command [destination] [mask subnetmask] [gateway] [metric costmetric]
参数
-f
清除所有网关入口的路由表。如果该参数与某个命令组合使用,路由表将在运行命令前清除。
-p
该参数与 add 命令一起使用时,将使路由在系统引导程序之间持久存在。默认情况下,系统重新启动时不保留路由。与 print 命令一起使用时,显示已注册的持久路由列表。忽略其他所有总是影响相应持久路由的命令。
command
指定下列的一个命令。
命令 目的
print 打印路由
add 添加路由
delete 删除路由
change 更改现存路由
destination
指定发送 command 的计算机。
mask subnetmask
指定与该路由条目关联的子网掩码。如果没有指定,将使用 255.255.255.255。
gateway
指定网关。
名为 Networks 的网络数据库文件和名为 Hosts 的计算机名数据库文件中均引用全部 destination 或 gateway 使用的符号名称。如果命令是 print 或 delete,目标和网关还可以使用通配符,也可以省略网关参数。
metric costmetric
指派整数跃点数(从 1 到 9999)在计算最快速、最可靠和(或)最便宜的路由时使用。
Rsh
在运行 RSH 服务的远程计算机上运行命令。该命令只有在安装了 TCP/IP 协议后才可以使用。
rsh computer [-l username] [-n] command
参数
computer
指定运行 command 的远程计算机。
-l username
指定远程计算机上使用的用户名。如果省略,则使用登录的用户名。
-n
将 rsh 的输入重定向到 NULL。
command
指定要运行的命令。
Tftp
将文件传输到正在运行 TFTP 服务的远程计算机或从正在运行 TFTP 服务的远程计算机传输文件。该命令只有在安装了TCP/IP 协议后才可以使用。
tftp [-i] computer [get | put] source [destination]
参数
-i
指定二进制图像传送模式(也称为“八位字节”)。在二进制图像模式中,文件一个字节接一个字节地逐字移动。在传送二进制文件时使用该模式。
如果省略了 -i,文件将以 ASCII 模式传送。这是默认的传送模式。此模式将 EOL 字符转换为 UNIX 的回车符和个人计算机的回车符/换行符。在传送文本文件时应使用此模式。如果文件传送成功,将显示数据传输率。
computer
指定本地或远程计算机。
put
将本地计算机上的文件 destination 传送到远程计算机上的文件 source。
get
将远程计算机上的文件 destination 传送到本地计算机上的文件 source。
如果将本地计算机上的文件 file-two 传送到远程计算机上的文件 file-one,请指定 put。如果将远程计算机上的文件file-two 传送到远程计算机上的文件 file-one,请指定 get。
因为 tftp 协议不支持用户身份验证,所以用户必须登录,并且文件在远程计算机上必须可以写入。
source
指定要传送的文件。如果本地文件指定为 -,则远程文件在 stdout 上打印出来(如果获取),或从 stdin(如果放置)读取。
destination
指定将文件传送到的位置。如果省略了 destination,将假定与 source 同名。
Tracert
该诊断实用程序将包含不同生存时间 (TTL) 值的 Internet 控制消息协议 (ICMP) 回显数据包发送到目标,以决定到达目标采用的路由。要在转发数据包上的TTL 之前至少递减 1,必需路径上的每个路由器,所以 TTL 是有效的跃点计数。数据包上的 TTL 到达 0 时,路由器应该将“ICMP 已超时”的消息发送回源系统。Tracert 先发送 TTL 为 1 的回显数据包,并在随后的每次发送过程将 TTL 递增 1,直到目标响应或 TTL 达到最大值,从而确定路由。路由通过检查中级路由器发送回的“ICMP 已超时”的消息来确定路由。不过,有些路由器悄悄地下传包含过期 TTL 值的数据包,而 tracert 看不到。
tracert [-d] [-h maximum_hops] [-j computer-list] [-w timeout]target_name
参数
/d
指定不将地址解析为计算机名。
-h maximum_hops
指定搜索目标的最大跃点数。
-j computer-list
指定沿 computer-list 的稀疏源路由。
-w timeout
每次应答等待 timeout 指定的微秒数。
target_name
目标计算机的名称。 NET命令的基本用法
Net
以下综合了WINDOWS 98,WINDOWS WORKSTATION和WINDOWS SERVER 三个操作系统关于NET命令的解释,希望可以更全面一些。
先说一些:
(1)NET命令是一个命令行命令。
(2)管理网络环境、服务、用户、登陆。。。。等本地信息
(3)WIN 98,WIN WORKSTATION和WIN NT都内置了NET命令。
(4)但WIN 98的NET命令和WORKSTATION、NT的NET命令不同。
(5)WORKSTATION和SERVER中的NET命令基本相同。
(6)获得HELP
(1)在NT下可以用图形的方式,开始-》帮助-》索引-》输入NET
(2)在COMMAND下可以用字符方式,NET /?或NET或NET HELP得到一些方法 相应的方法的帮助NETCOMMAND /HELP或NET HELP COMMAND 或NET COMMAND /? 另对于错误NET HELPMSG MESSAGE#是4位数
(7)强制参数 所有net命令接受选项/yes和/no(可缩写为/y和/n)。[简单的说就是预先给系统的 提问一个答案]
(8)有一些命令是马上产生作用并永久保存的,使用的时候要慎重
(9)对于NET命令的功能都可以找到相应的图形工具的解决方案
(10)命令的组成 命令 参数 选项 | 参数 选项 | 参数 选项 |。。。。。。 罗里罗嗦说了一大堆,其实就是6和7有用,呵呵。另有两件事:
(1)在NT的NET命令中有一些参数是只有在SERVER环境中才能使用的
(2)在WIN98的NET命令中有一些参数不能在DOS-WIN中使用,只能在DOS环境中使用
下面对NET命令的不同参数的基本用法做一些初步的介绍:
一、NET VIEW
作 用:显示域列表、计算机列表或指定计算机的共享资源列表。
命令格式:net view [\\computername | /domain[:domainname]
参数介绍:
(1)键入不带参数的net view显示当前域的计算机列表。
(2)\\computername 指定要查看其共享资源的计算机。
(3)/domain[:domainname]指定要查看其可用计算机的域。
简单事例:
(1)net view \\YFANG查看YFANG的共享资源列表。
(2)net view /domain:LOVE查看LOVE域中的机器列表。
二、NET USER
作 用:添加或更改用户帐号或显示用户帐号信息。该命令也可以写为 net users。
命令格式:net user [username [password | *] [options] [/domain]
参数介绍:
(1)键入不带参数的net user查看计算机上的用户帐号列表。
(2)username添加、删除、更改或查看用户帐号名。
(3)password为用户帐号分配或更改密码。
(4)*提示输入密码。
(5)/domain在计算机主域的主域控制器中执行操作。
简单事例:
(1)net user yfang查看用户YFANG的信息
三、NET USE
作 用:连接计算机或断开计算机与共享资源的连接,或显示计算机的连接信息。
命令格式:net use [devicename | *] [\\computername\sharename[\volume] [password | *] [/user:[domainname\]username] [/delete] | [/persistent:{yes | no]}
参数介绍:
键入不带参数的net use列出网络连接。
devicename指定要连接到的资源名称或要断开的设备名称。
\\computername\sharename服务器及共享资源的名称。
password访问共享资源的密码。
*提示键入密码。
/user指定进行连接的另外一个用户。
domainname指定另一个域。
username指定登录的用户名。
/home将用户连接到其宿主目录。
/delete取消指定网络连接。
/persistent控制永久网络连接的使用。
简单事例:
(1)net use e: \\YFANG\TEMP将\\YFANG\TEMP目录建立为E盘
(2)net use e: \\YFANG\TEMP /delete断开连接
四、NET TIME
作 用:使计算机的时钟与另一台计算机或域的时间同步。
命令格式:net time [\\computername | /domain[:name] [/set]
参数介绍:
(1)\\computername要检查或同步的服务器名。
(2)/domain[:name]指定要与其时间同步的域。
(3)/set使本计算机时钟与指定计算机或域的时钟同步。
下面的这4个参数是相关的,所以一起介绍
五、Net Start
作 用:启动服务,或显示已启动服务的列表。
命令格式:net start service
六、Net Pause
作 用:暂停正在运行的服务。
命令格式:net pause service
七、Net Continue
作 用:重新激活挂起的服务。
命令格式:net continue service
八、NET STOP
作 用:停止 Windows NT 网络服务。
命令格式:net stop service
参数介绍:我们来看看这些服务都是什么
(1)alerter(警报)
(2)client service for netware(Netware 客户端服务)
(3)clipbook server(剪贴簿服务器)
(4)computer browser(计算机浏览器)
(5)directory replicator(目录复制器)
(6)ftp publishing service (ftp )(ftp 发行服务)
(7)lpdsvc
(8)net logon(网络登录)
(9)network dde(网络 dde)
(10)network dde d
I. CMD命令查看域名解析是否生效
在电脑的菜单的输入框输入cmd打开命令提示符,在命令提示符中输入nslookup 你的域名,如果返回的IP地址和你的服务器地址一至,说明域名已经成功解析,至于是否可以使用,还要看是否备案成功,如果没有备案80端口是无法使用的
J. 查看域名解析命令
ipconfig/flushdns是释放DNS,ipconfig/displaydns是重新获取DNS的IP解析地址。解析还有一个就是nslookup