文档库 最新最全的文档下载
当前位置:文档库 › 掌握Cisco IOS测试命令的多种用法以及IOS恢复方法

掌握Cisco IOS测试命令的多种用法以及IOS恢复方法

掌握Cisco IOS测试命令的多种用法以及IOS恢复方法
掌握Cisco IOS测试命令的多种用法以及IOS恢复方法

掌握Cisco IOS测试命令的多种用法以及IOS恢复方法

无论是在现实世界还是试验室环境中,Cisco IOS测试命令都是一个非常有用并且功能强大的命令。学习这个命令的基本用法,并且了解几个有用的子命令。如果你从未用过Cisco IOS test命令,这并不奇怪。我遇到过许多从未听说过这个命令的网络管理员。根据我的经验,无论是在现实世界还是实验室环境中,这个test是一个非常有用并且功能强大的命令。正如你可能知道的,即使只是以正确的顺序使用Cisco IOS命令有时也是不容易的。而且在你以正确的顺序使用了正确的命令之后,你才能知道这些命令正确执行呢?这就是需要测试命令的原因。让我们对此做一个亲密接触。

要想查看你的IOS上可用于测试的选项,请以特权方式进入,并且输入:

Router# test ?

这个命令返回一个选项列表。例如,在我运行了IOS 12.3(6a)的3600 Series路由器上,我有34个子命令。而在我的Catalyst 3524 IOS交换机上,我只有八个子命令可用。为了使你了解能做些什么,这里给出我的路由器和交换机对该命令的输出。

router# test ?

aaa : AAA Authentication, Authorization and Accounting

interfaces : Network interfaces

memory : Non-volatile and/or multibus memory

pas : Port Adaptor Tests

scp : SCP test commands

service-module : Service module sgbp

Virtual-Template: Virtual Template interface

appletalk : APPLETALK diagnostic code

cac : test the l2 cac functionality

call : Call test commands

cns : CNS agents

crypto : Test crypto functions

dsp : Test DSP functions

eigrp : IPX EIGRP test commands

enum : test enum

gssapi : GSSAPI test code

hpi : host port interface

ifs : IFS TEST code

ipc : Inter-Process Communication Test Commands

ipmobile : IP Mobility Test commands

pasvc : PPP over ATM SVC Test Driver

pm : Port Manager test commands

pppatm : PPP over ATM SSS Test

pppoe : PPPoE test commands

sctp : SCTP test commands

source-group : Test Source IP Group

spanning-tree : Spanning Tree Subsystem

ssl : SSL Test

sw-vlan : Test VLAN Manager feature

tpu : TPU test system

translation-rule : Test translation rule table voice Voice related test commands

router#

CAT1#test ?

cns : CNS agents

ifs : IFS TEST code

l2protocol-tunnel : layer 2 tunnel port

l3tcam : Test L3TCAM Manager

spanning-tree : Spanning Tree Subsystem

stats : Test stats

sw-vlan : Test VLAN Manager feature

tcam : Test TCAM Mgr

CAT1#test

正如你看到的,你通常只使用其中几个子命令来进行测试,特别是在路由器上。但是这么多的选择通常诱惑你去进一步了解它们-你知道哪些是最有用的吗?当然,最重要的是你想测试什么。当你比较空闲时,我建议你运行一下这个命令并试试所有可用的子命令。然而,请记住你不应该在一个产品级的路由器上使用其中的某些测试子命令。例如,在NVRAM上使用test memory会删除所有文件。一些Cisco路由器模型只对特定的生产线提供测试命令。例如,在一个Cisco 7500系列路由器上,用的是t1测试命令。

根据我的经验,下面的子命令非常有用。

test aaa

如果你向某个TACACS+或RADIUS服务器配置路由器认证,总是存在你可能犯错误并将所有人关在路由器之外的危险。你可以使用这个命令通过一个特定的用户名和口令来测试从路由器到AAA服务器的认证。要得到更多的信息,请查看Cisco有关test aaa命令的文档。

test interfaces

这个命令允许你测试一个当前没有网络连接路由器。换句话说就是,在将路由器连接到网络之前用这个命令测试它。要得到更多的信息,请查看Cisco有关test interfaces命令的文档。

这里是这个命令的例子:

Router# test interfaces

Test Ethernet0/0 [y/n] ? y

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Passed

No IP address for Serial0/0.

Skipping...

No IP address for BRI0/0.

Skipping...

No IP address for BRI0/0:1.

Skipping...

No IP address for BRI0/0:2.

Skipping...

Test Dialer1 [y/n] ?

... Failed - timeout problem

Test Loopback1 [y/n] ? n

Skipping...

Test Tunnel1 [y/n] ? n

Skipping...

Test Tunnel2 [y/n] ? n

Skipping...

9 interfaces: 1 passed, 1 failed, 3 skipped, 4 untestable

Router#

test service-module

你可以用这个命令测试集成的CSU/DSU单元。例如,如果你在路由器上集成了一个56K CSU/DSU或T1 CSU/DSU的WIC,你可以使用这个命令测试该模块。要得到更多信息,查看Cisco有关test service-module命令的文档。

test crypto

如果你正在两个路由器之间建立IPSec加密,这个命令将非常有用。你可以利用它测试同远程路由器建立加密通道,而无需使用任何真实的生产数据以触发连接。要得到更多信息,查看Cisco有关test crypto命令的文档。

isdn test

这是几个不以test开头的测试子命令之一。isdn test call interface和isdn test disconnect interface命令对任何使用ISDN的网络管理员都非常有用。使用这些一行的命令,你可以强制路由器给一个ISDN调用任何号码并且断开这个调用。

你还可以利用这个命令完全断开一个存在的调用,它是一个比使用clear interface bri0/0以断开一行的更好选择,因为clear interface bri0/0会在ISDN接口和交换机之间造成混乱。尽管这个命令无需任何拨号列表,但你仍然必须确保ISDN服务配置文件标识符(SPID)和交换机类型是正确的。要得到更多信息,查看Cisco有关isdn test命令的文档。

VoIP命令

对VoIP也有几个可用的test子命令。实际上,我将在另一篇文章中专门讨论Cisco路由器上各种不同的VoIP测试子命令。所以如果你正在使用VoIP,我建议详细了解这些子命令;尝试test voice,test call,test port和test tone。要得到更多信息,查看Cisco有关VoIP命令的文档

CISCO路由器IOS升级方法

前不久,朋友在对一台带语音模快的CISCO2610进行IOS升级时,由于路由器的内存(flash)为8M,IOS软件为7M多,升级后路由器无法正常启动。启动后到rommon 1 >状态,请求帮助。由于本人长期从事计算机网络管理工作,在对CISCO路由器的长期日常维护和管理实践中积累了一定的经验。现总结归纳出CISCO路由器IOS映像升级的几种方法,供广大网络爱好者或同仁参考。

在介绍CISCO路由器IOS升级方法前,有必要对Cisco路由器的存储器的相关知识作以简单介绍。路由器与计算机相似,它也有内存和操作系统。在Cisco路由器中,其操作系统叫做互连网操作系统(Internetwork Operating System),常简称为IOS。路由器的存储器主要有:

ROM:只读存储器包含路由器正在使用的IOS的一份副本;

RAM:IOS将随机访问存储器分成共享和主存。主要用来存储运行中的路由器配置和与路由协议有关的IOS数据结构;

FLASH (闪存):用来存储IOS软件映像文件,闪存是可以擦除内存,它能够用IOS的新版本覆写,IOS升级主要是闪存中的IOS映像文件进行更换。

NVRAM:非易失性随机访问存储器,用来存储系统的配置文件。

IOS升级方法一

在对能够正常启动的CISCO路由器的IOS进行升级时,比较简单。具体步骤如下:

1、寻找一种TFTP服务器软件(有CISCO公司的TFTPServer或3COM公司的3Cserver等,在升级较大IOS映象文件时,建议用3Cserver),安装在一台计算机上,将要升级的IOS映象文件拷贝到相关的目录中(例:D:\),并运行TFTP服务器软件,通过菜单设置Root目录为拷贝IOS映象文件所在目录(如D:\)。假设该计算机的IP地址为10.32.10.1;

2、连接路由器的console口与PC机的COM1,使用PC的超级终端软件访问路由器,将路由器的地址设为10.32.10.32(与计算机的IP地址同网段即可)。建议在进行IOS升级前将原有IOS文件备份下来,防止待升级的IOS文件存在问题不可用;

Router# dir flash: (查看目前IOS映象文件名,也可用Router#Show version)

Directory of flash:/

1 -rw- 599829

2 C2600-I-MZ.122-11.BIN

8388608 bytes total (2390252 bytes free)

Router#copy flash tftp (备份IOS文件)

Source filename []?c2600-i-mz.122-11.bin

Address or name of remote host []? 10.32.10.1 (TFTP服务器地址)

Destination filename [c2600-i-mz.122-11.bin]?

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

5998292 bytes copied in 324.071 secs (18509 bytes/sec)

Router#

3、对路由器进行IOS升级;

Router#copy tftp flash

Address or name of remote host []? 10.32.10.1 (TFTP服务器地址)

Source filename []? c2600-i-mz.122-11.bin (需升级的新IOS映象文件名)

Destination filename [c2600-i-mz.122-11.bin]?

Do you want to over write? [confirm]

Accessing tftp://10.32.10.1/c2600-i-mz.122-11.bin...

Erase flash: before copying? [confirm]

Erasing the flash filesystem will remove all files! Continue? [confirm]

Erasing device... eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ...erasedee

Erase of flash: complete

Loading c2600-i-mz.122-11.bin from 10.32.10.1 (via Ethernet0/0): !!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[OK - 5998292 bytes]

Verifying checksum... OK (0xA0C0)

5998292 bytes copied in 318.282 secs (18846 bytes/sec)

Router#

IOS升级方法二

由于升级失败后或者路由器的config-register寄存器值为0x2101时,开启路由器时、或者在开启(某些型号)Cisco路由器的电源

开关后30秒内按下Ctrl+break键,中断路由器的正常启动,路由器都会进入rom监视模式,即Router(boot)>,在这种情形下,对路由器的IOS进行升级,也比较简单。首先进入特权模式下,即

Router(boot)>en

Router(boot)#

其他升级步骤同方法一,即:执行copy tftp flash命令,对IOS进行升级。升级完成后,不要忘了修改config-register寄存器值为

0x2102(恢复正常值)。

Router(boot)# t

Router(boot)( config)# config-register 0x2102

Router(boot)( config)#exit

Router(boot)#wr

Router(boot)#reload

重启即可。

IOS升级方法三

由于不小心使用了命令erase flash或升级失败后或在开启(某些型号)Cisco路由器的电源开关后30秒内按下Ctrl+break键,中断路由器的正常启动,路由器都会进入rom监视模式,即rommon 1>,在这种情形下,对路由器的IOS进行升级,情况要稍微复杂一点。在rommon 1>状态下,可键?请求帮助。(1为命令行序号,每执行1条命令自动加1)

rommon 1 > ?

alias set and display aliases command

boot boot up an external process

break set/show/clear the breakpoint

confreg configuration register utility

cont continue executing a downloaded image

context display the context of a loaded image

cookie display contents of cookie PROM in hex

dev list the device table

dir list files in file system

dis display instruction stream

dnld serial download a program module

frame print out a selected stack frame

help monitor builtin command help

history monitor command history

meminfo main memory information

repeat repeat a monitor command

reset system reset

set display the monitor variables

stack produce a stack trace

sync write monitor environment to NVRAM

sysret print out info from last system return

tftpdnld tftp image download

unalias unset an alias

unset unset a monitor variable

xmodem x/ymodem image download

rommon 2 >

在rommon 1>状态下有两种升级IOS方法。

㈠、通过Xmodem命令(注:Xmodem与实际的modem没有任何联系只是一个传输协议数据是通过终端的串口和路由器的Console口灌进去的)升级IOS,具体步骤如下:

1、用Cisco原配的线缆连接路由器的console口与PC机的COM1,使用PC机的超级终端软件访问路由器,这时不需要对PC和路由器配置任何地址。

2、在这个模式下,输入Xmodem命令,即:

rommon 2 > xmodem -c c2600-i-mz.122-11.bin

(-c是带校验,c2600-i-mz.122-11.bin为存放在PC机上的IOS映像文件)

WARNING: All existing data in bootflash will be lost!

Invoke this application only for disaster recovery.

Do you wish to continue? y/n [n]: y

Ready to receive file c2600-i-mz.122-11.bin ... (此时在超级终端的传送栏目=> 选择发送文件选项 => 再选择Xmodem 并指明IOS映像文件所在的路径,按发送即开始上传IOS,等待时间很长,视IOS的大小和传输速度。)

Erasing flash at 0x607c0000

program flash location 0x605b0000

Download Complete!

传完以后,对整个系统初始化显示如下:

program load complete, entry point: 0x80008000, size: 0x5b85e0

Self decompressing the image : #################################################

################################################# [OK]

Smart Init is disabled. IOMEM set to: 10

Using iomem percentage: 10

Restricted Rights Legend

Use, duplication, or disclosure by the Government is

subject to restrictions as set forth in subparagraph

(c) of the Commercial Computer Software - Restricted

Rights clause at FAR sec. 52.227-19 and subparagraph

(c) (1) (ii) of the Rights in Technical Data and Computer

Software clause at DFARS sec. 252.227-7013.

cisco Systems, Inc.

170 West Tasman Drive

San Jose, California 95134-1706

Cisco Internetwork Operating System Software

IOS (tm) C2600 Software (C2600-I-M), Version 12.2(11)T9, RELEASE SOFTWARE (fc1)

TAC Support: https://www.wendangku.net/doc/8f9609220.html,/tac

Copyright (c) 1986-2003 by cisco Systems, Inc.

Compiled Mon 23-Jun-03 15:42 by cmong

Image text-base: 0x8000809C, data-base: 0x80A68B48

cisco 2610 (MPC860) processor (revision 0x203) with 22528K/2048K bytes of memory

Processor board ID JAD03483395 (1128032249)

M860 processor: part number 0, mask 49

Bridging software.

X.25 software, Version 3.0.0.

1 Ethernet/IEEE 802.3 interface(s)

2 Serial(sync/async) network interface(s)

32K bytes of non-volatile configuration memory.

8192K bytes of processor board System flash (Read/Write)

Press RETURN to get started!

*Mar 1 00:00:05.652: %PA-2-UNDEFPA: Undefined Port Adaptor type 100 in bay 1

*Mar 1 00:00:07.996: %LINK-3-UPDOWN: Interface Ethernet0/0, changed state to up

*Mar 1 00:00:07.996: %LINK-3-UPDOWN: Interface Serial0/0, changed state to down

*Mar 1 00:00:07.996: %LINK-3-UPDOWN: Interface Serial0/1, changed state to down

*Mar 1 00:00:09.142: %LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0, changed state to up *Mar 1 00:00:09.142: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/0, changed state to down *Mar 1 00:00:09.142: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/1, changed state to down *Mar 1 00:00:09.458: %SYS-5-CONFIG_I: Configured from memory by console

*Mar 1 00:00:11.245: %LINK-5-CHANGED: Interface Serial0/1, changed state to administratively down

*Mar 1 00:00:12.275: %SYS-5-RESTART: System restarted --Cisco Internetwork Operating System Software

IOS (tm) C2600 Software (C2600-I-M), Version 12.2(11)T9, RELEASE SOFTWARE (fc1)

TAC Support: https://www.wendangku.net/doc/8f9609220.html,/tac

Copyright (c) 1986-2003 by cisco Systems, Inc.

Compiled Mon 23-Jun-03 15:42 by cmong

*Mar 1 00:00:12.279: %SNMP-5-COLDSTART: SNMP agent on host NE16 is undergoing a cold start

Router>

采用这种方法时,由于使用console口来传送,速率为9600bps,需要时间较长。因此可修改console口速率利用xmodem命令实现快速升级IOS。具体方法如下:

rommon 1 > confreg 回车

Configuration Summary

enabled are:

load rom after netboot fails

console baud: 9600

boot: image specified by the boot system commands

or default to: cisco2-C2600

do you wish to change the configuration? y/n [n]: y (选择 yes)

enable "diagnostic mode"? y/n [n]: n (选择 no)

enable "use net in IP bcast address"? y/n [n]: n (选择 no)

disable "load rom after netboot fails"? y/n [n]: n (选择 no)

enable "use all zero broadcast"? y/n [n]: n (选择 no)

enable "break/abort has effect"? y/n [n]: n (选择 no)

enable "ignore system config info"? y/n [n]: n (选择 no)

change console baud rate? y/n [n]: y (选择 yes)

enter rate: 0 = 9600, 1 = 4800, 2 = 1200, 3 = 2400

4 = 19200,

5 = 38400,

6 = 57600,

7 = 115200 [0]: 7 (选择 7,用最大的11520

速率的xmodem传输)

change the boot characteristics? y/n [n]: n (选择 no)

Configuration Summary

enabled are:

load rom after netboot fails

console baud: 115200

do you wish to change the configuration? y/n [n]: n (选择 no)

You must reset or power cycle for new config to take effect

rommon 2 > reset 回车

注意:在按reset键前,需要修改串口速度(我的电脑---端口属性----串口速度调为115200),然后再修改超级终端里设置速率为115200,记住,一定要这么做,否则会出现乱码!然后关闭这个超级终端,重新建立一个超级终端连接,重新启动系统后,出现

rommon 1> 提示符

然后,输入

rommon 1> xmodem -r

Do not start the sending program yet...

Invoke this application only for disaster recovery.

Do you wish to continue? y/n [n]: y (选择 yes)

Ready to receive file ...

此时,在超级终端的菜单上的“传送”---“发送文件”----选择IOS映像文件所在地以及选择使用“xmodem”协议,点击“发送”即可。等待10-20分钟左右就可升级完3-6M的IOS文件!待升级完成后,请记住修改回计算机串口与超级终端、路由器confreg下的xmodem等传输速率为9600bps。

方法如下:

Router>en 进入新IOS的特权模式

Router#reload 重启系统

Proceed with reload? [confirm] 回车

00:01:04: %SYS-5-RELOAD: Reload requested

System Bootstrap, Version 11.3(2)XA4, RELEASE SOFTWARE (fc1)

Copyright (c) 1999 by cisco Systems, Inc.

TAC:Home:SW:IOS:Specials for info

PC = 0xfff0a530, Vector = 0x500, SP = 0x680127b0

C2600 platform with 24576 Kbytes of main memory

PC = 0xfff0a530, Vector = 0x500, SP = 0x80004684

monitor: command "boot" aborted due to user interrupt

30秒内按ctrl+break键

rommon 1 > confreg (输入“confreg”命令)

Configuration Summary

enabled are:

console baud: 115200

boot: image specified by the boot system commands

or default to: cisco2-C2600

do you wish to change the configuration? y/n [n]: y (选择 yes)

enable "diagnostic mode"? y/n [n]: n (选择 no)

enable "use nn IP bcast address"? y/n [n]: n (选择 no)

disable "load rom after netboot fails"? y/n [n]: n (选择 no)

enable "use all zero broadcast"? y/n [n]: n (选择 no)

enable "break/abort has effect"? y/n [n]: n (选择 no)

enable "ignore system config info"? y/n [n]: n (选择 no)

change console baud rate? y/n [n]: y (选择 yes)

enter rate: 0 = 9600, 1 = 4800, 2 = 1200, 3 = 2400

4 = 19200,

5 = 38400,

6 = 57600,

7 = 115200 [7]: 0 (选择 0,改回用标准速率速率9600的xmodem传输)

change the boot characteristics? y/n [n]: n (选择 no)

Configuration Summary

enabled are:

load rom after netboot fails

console baud: 9600

boot: image specified by the boot system commands

or default to: cisco2-C2600

do you wish to change the configuration? y/n [n]: n

You must reset or power cycle for new config to take effect

rommon 2 >

此时手工改回计算机串口与超级终端2者传输速率为9600

然后敲入

rommon 2 >reset

最好关掉电源后,重新启动。利用xmodem命令实现路由器IOS升级速度较慢,往往等上很长时间,为了快速升级,可以采用下列方法。

㈡通过tftpdnld命令升级IOS,具体步骤如下:

1、用Cisco原配的线缆连接路由器的console口与PC机的COM1,使用PC机的超级终端软件访问路由器;用一根双绞线连接路由

器的eth0/0口与PC机的网卡。

2、将路由器的eth0/0口IP地址设为10.32.10.32;PC机的IP地址设为10.32.10.1。将要升级的IOS映象文件拷贝到相关的目录中,并运行TFTP服务器软件,通过菜单设置Root目录为拷贝IOS映象文件所在目录。

3、通过set 命令查看配置参数

rommon 2 > set

PS1=rommon ! >

BOOT=

BSI=0

RET_2_RTS=

?=0

4、在 rommon 状态下输入:(注意大小写)

rommon 3 >IP_ADDRESS=10.32.10.1 (路由器的ip地址)

rommon 4 >IP_SUBNET_MASK=255.255.255.0 (路由器的掩码)

rommon 5 >DEFAULT_GATEWAY=10.32.10.32 (缺省网关,是pc机的ip地址)

rommon 6 >TFTP_SERVER=10.32.10.32 (是pc机的ip地址)

rommon 7 >TFTP_FILE=C2600-I-MZ.122-11.BIN (上传ios文件的名称)

rommon 8>sync (保存参数配置)

rommon 9 >set (查看)

rommon 10 > set

PS1=rommon ! >

BOOT=

IP_ADDRESS=10.32.10.1

IP_SUBNET_MASK=255.255.255.0

DEFAULT_GATEWAY=10.32.10.32

TFTP_SERVER=10.32.10.32

TFTP_FILE=C2600-I-MZ.122-11.BIN

BSI=0

RET_2_RTS=

?=0

rommon 11 >tftpdnld

执行tftpdnld命令进行ios升级,有时可能会报错或命令不执行,这时只要用sync命令保存配置后,重新启动路由器(最好关掉电源再开机)后,再执行tftpdnld命令就可以了。

rommon 11 >tftpdnld(传送文件)出现提示选择y

IP_ADDRESS: 10.32.10.1

IP_SUBNET_MASK: 255.255.255.0

DEFAULT_GATEWAY: 10.32.10.32

TFTP_SERVER: 10.32.10.32

TFTP_FILE: C2600-I-MZ.122-11.BIN

Invoke this command for disaster recovery only.

WARNING: all existing data in all partitions on flash will be lost!

Do you wish to continue? y/n: [n]: y

Receiving C2600-I-MZ.122-11.BIN from 10.32.10.32!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

File reception completed.

Copying file C2600-I-MZ.122-11.BIN to flash.

Erasing flash at 0x607c0000

program flash location 0x605b0000

rommon 13 >

在rommon 13 >提示符下键入reset,或重新启动路由器(power-cycle),进入正常引导状态,即:

Router>

笔者在Cisco2500、2600、7200等系列路由器上均实际操作过,以上为在Cisco2610路由器上实际操作捕获或截屏,所配地址只是特例,大家可根据实际需要予以修改。最后建议:大家在作正常路由器系统升级时,为防止不正确操作等引起的升级失败,请先把路由器原有的系统备份下来,包括FLASH中IOS和NVRAM中的配置文件。

Cisco路由器IOS映像恢复及升级方法

笔者从事江西省移动通信公司BOSS(Business Operator Support System,业务运营支撑系统)TCP/IP网络日常维护和管理工作近3年,对Cisco路由器的操作、维护和管理有一定的经验,并在数年的实践过程中总结出一套关于Cisco路由器IOS映像恢复及升级的方法,现执笔成文,以飨读者。

由于历史原因,Cisco公司的路由器产品丰富且繁杂,Cisco路由器的专用操作系统IOS映像也同时存在多个版本,以下就分别针对两类加载不同版本的IOS映像文件的Cisco路由器做讨论。

一、Cisco 1000,1600,2500,4000系列

1、IOS映像恢复的方法及步骤

1) 连接PC的COM1口与路由器的console口,使用PC的超级终端软件访问该路由器;

2) 开启路由器的电源开关,并在30秒内按下键盘的Ctrl+break,中断路由器的正常启动以进入rom监视模式,屏幕上提示符如下:>

3) 键入如下命令:

>o /r 0x2101

改变路由器虚拟寄存器的默认值(0x2102);

4) 键入重启命令:

>i

路由器重启,当屏幕显示以下信息表明路由器重启完毕:

System Bootstrap, Version 5.2(8a), RELEASE SOFTWARE

Copyright (c) 1986-1995 by cisco Systems

2500 processor with 1024 Kbytes of main memory

Press RETURN to get started!

5) 路由器在虚拟寄存器的值为0x2101时自动进入rom启动模式:

router(boot)>

6) 此时,将TFTP服务器上的IOS映像文件恢复至路由器flash memory中,依次键入以下命令:

router(boot)>en

router(boot)#copy tftp flash

System flash directory:

No files in System flash

[0 bytes used, 4194304 available, 4194304 total]

Address or name of remote host [255.255.255.255]?192.168.18.168(IP地址已作技术处理,下同)

Source file name? igs-i-l.110-22a.bin(IOS映像文件名)

Destination file name [igs-i-l.110-22a.bin]?

Accessing file 'igs-i-l.110-22a.bin' on 192.168.18.168...

Loading igs-i-l.110-22a.bin from 192.168.18.168 (via Ethernet0): ! [OK]

Device needs erasure before copying new file

Erase flash device before writing? [confirm]

Copy 'igs-i-l.110-22a.bin' from server

as 'igs-i-l.110-22a.bin' into Flash WITH erase? [yes/no]y

Erasing device... eeeeeeeeeeeeeeee ...erased

Loading igs-i-l.110-22a.bin from 192.168.18.168 (via Ethernet0): !!!!!!!!!!!!!!!!!!!!(!表示恢复成功)

7) 还原路由器虚拟寄存器的默认值(0x2102),恢复路由器的正常启动顺序,依次键入以下命令:

router(boot)#conf t

router(boot)(config)#config-register 0x2102

router(boot)(config)#exit

router(boot)#wr

router(boot)#reload

2、IOS映像升级的方法及步骤

1) 升级之前先备份,将相关文件备份至TFTP服务器,键入如下命令:

router#copy bootflash tftp(Cisco 2500系列路由器不存在bootflash,相应的是rom)

router#copy flash tftp

router#copy startup-config tftp

2) 因为Cisco 1000,1600,2500,4000系列路由器不允许在正常工作状态下重写flash memory,所以只有进入rom(或bootflash)启动模式才能升级IOS映像,依次键入以下命令:

router#conf t

router(config)#config-register 0x2101

router(config)#exit

router#wr

router#reload

3) 路由器重启完毕后进入rom(或bootflash)启动模式,从TFTP服务器将新的IOS映像文件拷贝至路由器的flash memory中:router(boot)#copy tftp flash

4) 还原路由器虚拟寄存器的默认值(0x2102),恢复路由器的正常启动顺序,依次键入以下命令:

router(boot)#conf t

router(boot)(config)#config-register 0x2102

router(boot)(config)#exit

router(boot)#wr

router(boot)#reload

二、Cisco 1700,2600,3600,7200系列

1、IOS映像恢复的方法及步骤

1) 连接PC的COM1口与路由器的console口,使用PC的超级终端软件访问该路由器;

2) 开启路由器的电源开关,并在30秒内按下键盘的Ctrl+break,中断路由器的正常启动以进入rom监视模式,屏幕上提示符如下:rommon 1>

3) 键入xmodem命令:

rommon 1>xmodem c3640-i-mz.120-10.bin(IOS映像文件名)

4) 然后,路由器一直等待从PC上接收该IOS映像文件,此时在超级终端软件中点击发送选项,选择存放在PC本地硬盘中的IOS映像文件,确定后即开始下载文件至路由器的flash memory中,由于通讯带宽只有9600波特,整个文件下载时间约为1.5小时(依文件大小而定),屏幕显示信息如下:

Do not start the sending program yet...

device does not contain a valid magic number

dir: cannot open device flash:

WARNING: All existing data in flash will be lost!

Invoke this application only for disaster recovery.

Do you wish to continue? y/n[n]:y

Ready to receive file c3640-i-mz.120-10.bin ...

Erasing flash at 0x307c0000

program flash location 0x30380000

Download Complete!

program load complete, entry point: 0x80008000, size: 0x38f410

5) 接着,路由器将自动重启,屏幕显示信息如下:

Self decompressing the image : ################################# [OK]

Press RETURN to get started!

2、IOS映像升级的方法及步骤

1) 同理,升级之前先备份,将关键文件备份至TFTP服务器,键入下列命令: router#copy bootflash tftp(Cisco 3600系列路由器不存在bootflash)

router#copy flash tftp

router#copy startup-config tftp

2) 因为Cisco 1700,2600,3600,7200系列路由器允许在正常工作状态下重写flash memory,所以直接键入以下命令就可完成IOS映像的在线升级:

router#copy tftp flash

router#reload

或者,为保险起见(以路由器停止服务为代价),在进入rom监视模式后才进行IOS映像的升级,则依次进行下列操作:

2) 在路由器重启加电后30秒内按下键盘的Ctrl+break,中断路由器的正常启动直接进入rom监视模式,屏幕上提示符如下:rommon 1>

或者,在路由器重启过程完成后进行以下操作,同样可以进入路由器的rom监视模式:

router#conf t

router(config)#config-register 0x0

router(config)#exit

router#wr

router#reload

rommon 1>

3) 键入以下命令,将IOS映像的升级文件从TFTP服务器复制至路由器的flash memory中:

rommon 1>b c3640-i-mz.121-2.T 192.168.18.168

program load complete, entry point: 0x80008000, size: 0x4ed478

Self decompressing the image : ##################################[OK]

Loading c3640-i-mz.121-2.T from 192.168.18.168 (via Ethernet0/0):!!!!!!!!!!!!!!!

[OK - 5166484/10332160 bytes]

4) 还原路由器虚拟寄存器的默认值(0x2102),恢复路由器的正常启动顺序,依次键入以下命令:

rommon 1>confreg 0x2102

5) 键入重启命令,使得新配置生效,完成IOS映像的离线升级:

rommon 2>reset

认识Cisco IOS的访问权限

许多工作在Cisco IOS之上的网络管理员从未费心去考虑过他们正在使用的权限等级或这些等级的意义。然而,Cisco IOS实际上十六种不同的权限等级。David Davis论述了这些不同的等级并且向你介绍在配置这些权限时需要用到的主要命令。

你知道为什么Cisco IOS用不同的命令提供了16种权限等级?许多工作在Cisco IOS环境中的网络管理员从未费心去考虑过他们正在使用权限等级或这些等级的意义。

当在Cisco IOS中进入不同的权限等级时,你的权限等级越高,你在路由器中能进行的操作就越多。但是Cisco路由器的多数用户只熟悉两个权限等级:

用户EXEC模式-权限等级1

特权EXEC模式-权限等级15

当你在缺省配置下登录到Cisco路由器,你是在用户EXEC模式(等级1)下。在这个模式中,你可以查看路由器的某些信息,例如接口状态,而且你可以查看路由表中的路由。然而,你不能做任何修改或查看运行的配置文件。

由于这些限制,Cisco路由器的多数用户马上输入enable以退出用户EXEC模式。默认情况下,输入enable会进入等级15,也就是特权EXEC模式。在Cisco IOS当中,这个等级相当于在UNIX拥有root权限或者在Windows中拥有管理员权限。换句话说,你可以对路由器进行全面控制。

因为网络只是由少数人维护,他们每个人通常都有进入特权模式的口令。但是在某些情况下,那些小型或中型公司会进一步增长,而权限问题会变得更加复杂。

许多时候,当有一个支持小组或不需要在路由器上进行过多访问的缺乏经验的管理员时问题就出现了。或许他们只是需要连接到路由器以查看运行配置或重新设置接口。

在这种情况下,这些人会需要介于等级1到等级15之间的某个等级进行操作。请记住最小权限原则:只赋予必需的最少的访问权限。

有很多可行的配置IOS用户和权限的方法,我无法在一篇文章中详细描述每一种方法。所以,我们将关注你在配置权限时用到的基本命令。

Show privilege:这个命令显示目前的权限。这里给出一个例子:

router# show privilege

Current privilege level is 3

Enable:管理员通常使用这个命令以进入特权EXEC模式。然而,它也可以带你进入任何特权模式。这里给出一个例子:

router# show privilege

Current privilege level is 3

router# enable 1

router> show privilege

Current privilege level is 1

router>

User:这个命令不仅可以设定用户,它还可以告诉IOS,用户在登录的时候将拥有何种权限等级。这里给出一个例子:

router(config)# username test password test privilege 3

Privilege:这个命令设定某些命令只在某个等级才能用。这里给出一个例子:

router(config)# enable secret level 5 level5pass

Enable secret:默认情况下,这个命令创建一个进入特权模式15的口令。然而,你也可以用它创建进入其他你可以创建的特权模式的口令。

让我们考察一个例子。假设你想创建一个维护用户,他可以登录到路由器并且查看启动信息(以及等级1的其他任何信息)。你将输入的命令可能是:

router(config)# user support privilege 3 password support

router(config)# privilege exec level 3 show startup-config

需要注意的是并不需要enable secret命令,除非你想让以等级1登录进来的用户为了能提升到等级3而使用口令。在我们的例子中,新用户(维护)已经处在等级3而且无需额外的enable secret口令来登录。

除此之外,需要注意的是这个配置假设你已经拥有一个配置好的使用用户名和口令的路由器,该例子还假设你已经为等级15定义了enable secret命令,你有一个拥有等级15的超级用户,而且你已经在超级用户权限下保存了启动配置文件。

Cisco IOS:简化分支路由器管理

对于中小企业来说,采用VPN方式可以建立专用而安全的内部网络,但以往建立和管理VPN时所面临的繁杂工作常常令人望而却步。

对管理和支持移动及远程办公的网管员来说,企业网中分支路由器的管理一般会占据工作量中很大的一部分,而VPN正是基于分支路由器来构建企业网络的。为此,Cisco IOS软件新增加了两个特性,即Easy VPN Server和Easy VPN Remote。这两种特性简化了VPN的配置和管理,大大简化了企业间VPN的建立和维护。

Easy VPN Remote简化了与VPN配置有关的许多繁琐工作,大多数VPN参数的定义在企业总部就可以完成,之后再下传到本地路由器。Easy VPN Server是一个VPN软件服务程序,利用作为VPN客户端的其它Cisco产品,如VPN 3002硬件客户端程序或PIX 501防火墙,允许IOS路由器为远程和移动工作人员发出的VPN会话提供终端服务。这两种新特性尤其使中小型企业环境下VPN连接的配置和管理变得更简单,使中小企业与大型企业的应用变得一样简单,使中小型企业的员工与大型企业的员工一样能应付自如。随着移动工作人数的增长,对于承担着为移动工作人员提供安全和远程网络接入任务的中小型企业IT人员来说,这无疑是一个好消息。

Easy VPN Remote特性可在多种IOS路由器之上实施,包括Cisco 800、1700和uBR900系列等。1700系列接入路由器特别适用于中小型企业及其分支的需要,可提供VPN、安全防火墙、商用DSL以及综合了数据、语音、视频和传真的多种服务,这种电子商务平台的灵活性和易管理性,已使它成为世界上应用最为广泛的路由器之一。基于Easy VPN Remote特性,网络管理员拥有了解决远程接入、安全维护和降低费用等问题的工具,可以扩展1700作为VPN远程终端的能力,使公司总部VPN管道的维护过程更加合理化。基于Cisco 1721、1751和1760模块化路由器平台的5种新的VPN路由器也已推出。这些VPN安全设施包括基本路由器、用于加速性能的VPN加速模块、存储器升级以及IOS软件,它们不仅提供了必需的VPN性能,而且还提供了能将Cisco 1700系列路由器转变成稳定防火墙的IOS防火墙。

提供终端服务

对移动和远程工作人员来说,拥有与Internet高性能的连接还远远不够。要实现真正的高效性,这些用户必须能完全而安全地访问总公司的网络资源,这就意味着需要利用高级认证和数据加密能力来建立VPN连接。随着Easy VPN Server特性的发布,现在中小型企业及其分支的远程工作人员已经可以建立一个VPN,通过公共Internet来直接访问总公司资源,这使他们所需的高速网络资源的费用仅仅是安全连接费用的一小部分。在Easy VPN Server特性出现之前,为远程工作人员提供与总公司的安全接入通常必须通过PPTP协议来完成。虽然这种方法允许用户以终端的方式建立一个与总公司的安全连接,但PPTP管道并没有提供基于用户的认证,这将大大降低连接的整体安全性。建立安全连接是一种可供选择的替代方法,但是这种方法也非常有限,因为它们不支持通过网络的所有平台。除了Cisco 800、1700和uBR900系列路由器之外,作为Cisco VPN架构的产品,Easy VPN Server支持并维持更大范围平台上VPN的连通性,其中包括PIX防火墙和它们支持的VPN 客户端VPN 3000系列集线器。

当远程工作人员访问公司网络时,他们必须在公共网上建立一个Internet连接,然后利用VPN软件客户端向总公司发出一个VPN 会话,其中VPN软件客户端是Windows和其它操作系统都支持的一种应用。企业分支IOS路由器直接作为VPN管道的远程终端,意味着员工对公司网络资源的完全访问。利用Easy VPN Remote特性,企业分支路由器也可直接作为SOHO用户初始化的VPN管道的远程终端。

减少分支配置工作

Cisco VPN架构大大减少了企业分支和中心站点VPN参数配置及协调过程中的许多繁琐工作。一般来说,中心站点路由器必须建立安全策略,决定哪些VPN参数(如加密算法和认证算法)用于与远程设备进行通信。然后,这些安全策略被送到具有最小配置的远程设备。

Easy VPN Remote特性允许VPN 3000系列集线器或其它具有Easy VPN Server特性的Cisco产品来自动定义大多数企业分支路由器的VPN参数。在这种方案中,VPN 3000系列集线器作为一个IPSec服务器,而企业分支的路由器则作为IPSec的客户端。

VPN参数的自动配置包括:内部IP地址、内部子网掩码、内部DHCP服务器地址、内部WINS服务器地址、拆分管道允许标识。通过Easy VPN Remote特性对企业分支的1700系列路由器进行配置之后,VPN的配置就得到了简化,它与企业中心3000系列集线器相连接。Easy VPN Remote特性初始化了VPN与Easy VPN Server的连接,这促进了1700系列路由器IPSec参数和策略的设置,也产生了相应的VPN管道连接。由于与建立VPN连接有关的许多详细任务都已自动化,因此利用Easy VPN Remote特性,大大简化了建立连接的过程。

为了满足不同用户的建网需要,可通过两种不同方式来配置Easy VPN Remote特性:客户端模式,这是默认配置,仅允许客户端

设备访问中心站点资源(VPN 3000 集线器或其它VPN服务器都位于中心站点),但中心站点不能访问客户端的网络资源;网络扩展模式,中心站点和客户端用户可互相访问各自的网络资源。

图1 有了Easy VPN Server特性,利用VPN软件客户端程序,Cisco 1700系列等路由器可以为远程和移动用户发出的VPN会话提供终

端服务,或者利用Easy VPN Remote特性为SOHO的VPN用户实现终端会话的初始化。

图2 利用Easy VPN Remote特性,Cisco 1700建立了与企业中心VPN 3000 集线器、IOS路由器或PIX防火墙的连接。可通过上面

的任一设备用“PUSH”方式将配置参数送到Cisco 1700系列路由器,连接到路由器的PC机和主机可安全地访问企业中心,使整个企业网络轻松实现无缝扩展。

Cisoc路由器IOS操作系统丢失的恢复

在路由器的使用和配置过程中,有时因操作失误或系统故障,致使路由器IOS操作系统的丢失,导致路由器无法进入正常工作,下面以Cisco2611为例,简要介绍一种方便可靠的IOS操作系统恢复的方法。

一、路由器的基本组成及有关术语

路由器由硬件和软件组成。硬件主要包括处理器、内存、接口、控制端口等物理硬件和电路组成;软件主要由路由器的IOS

操作系统和运行配置文件组成。

硬件部分:

1、处理器

与计算机相类似,运行着IOS的Cisoc路由器也包括一个“中央处理器(CPU)”。不同系列和型号的路由器,CPU也不尽相同。Cisco一般采用两种类型的处理器,如Motorola68030和Orion/R4600等。路由器的处理器负责执行转发数据包所需的工作,如维护路

由器和桥接所需的各种路由表和路由运算等,路由器对数据包的处理速度很大程度上取决于处理器的类型和性能。

2、内存

Cisoc路由器主要采用下列四种类型的内存:ROM、FLASH、RAM、NVRAM。RAM是会在路由器启动或供电间隙时丢失其内容

的唯一的一种内存,各种内存的主要作用如下:

①ROM:

ROM 保存着路由器的引导或启动软件。这也是路由器运行的第一个软件,负责让路由器进入正常的工作状态。有些路由器将一套完整的IOS保存在ROM中,以便在另一个IOS不能使用时,作应急之用。ROM通常存放在一个或多个芯片上。

②FLASH:

FLASH可以形象地比作我们常用的PC机的硬盘,但远没有硬盘的容量大,主要用处是保存IOS软件,维持路由器的正常工作。若路由器安装了FLASH,它便是用来引导路由器的IOS软件的默认位置。只要FLASH的容量足够大,便可以保存多个IOS映象文件,

以提供多重启动。FLASH主要安装在主机的SIMM槽上,或是一块PCMAIC卡。

③RAM

主要存放IOS系统路由表和缓冲,即平常所说的运行配置,IOS通过RAM满足其所有的常规存储的需要。在配置IOS时,就

相当于修改了路由器的运行配置。

④NVRAM

NVRAM的主要作用是保存IOS在路由器启动时读入的配置数据,即常说的启动配置或备份配置。当路由器加电启动时,首先寻找和执行的即是该配置,如果该配置存在,路由器启动后,该配置就成了“运行配置”,当修改运行配置并执行存储后,运行配置就被复制到NVRAM中,当下次路由器加电后,该配置就会被自动调用。

3、接口

所有路由器都有“接口(Interface)”,每个接口都有自己的名字和编号。一个接口的全名由类型标识及数字构成,编号自0开始。

对于接口固定的路由器(如2500系列)或采用模块化接口的路由器(如4700系列),在接口的全名称中,只采用一个数字,并根据它们在路由器的物理顺序进行编号,如 Ethernet0、Serial0等;

对于支持“在线拨插和删除”或具有动态更改物理接口配置的路由器,其接口全名称中则包含两个数字,如2600系列、7200系列,其接口标识名称为Ethernet0/0、Serial1/0等;

对于支持“万用接口处理器(VIP)”的路由器,其接口编号形式为“插槽/端口适配器/端口号”,如7500系列路由器,其接口标识名称编号为:Ethernet4/0/1等。

4、控制台端口和辅助端口

所有的路由器都有控制台端口,能使用户或管理员利用终端与路由器进行通信,完成路由器配置;大多数路由器还有一个辅

助端口,通过连接Modem,使用户或管理员对路由器实现远程管理。

软件部分

运行于路由器的软件主要是IOS和进程。运行在相同或不同的路由器中的IOS 有不同的版本,可能通过"show version"命令进行查看;进程则是在路由器上实现某种特殊功能的运行程序,如IP包的选择是由一个进程完成的,IPX包的路由选择则是由另一进程完成的。

二、IOS系统恢复

1、准备工作

当路由器的IOS操作系统丢失后,路由器便无法进入正常的工作状态,但你也不必紧张和恐慌,下面以Cisco2611为例,介绍如何快速地恢复路由器的IOS操作系统。可以找一台PC机和相应的电缆,按照下图正确地连接设备。

2、恢复IOS操作系统

首先将IOS映象文件拷到在PC机上,安装tftp_server应用软件并运行该程序,然后键入如下命令:

ip_address = 192.168.1.1

ip_subnet_mask = 255.255.255.0

default_gateway = 198.168.1.1

tftp_server = 192.168.1.2

tftp_file = c2600-11-3.bin

tftpdnld

待出现提示符后,你便成功地完成了IOS映象文件的恢复,通过相应的配置,路由器就可以正常运行和使用了。

3、注意的几个问题:

①在连接运行tftp server的PC 机至路由器时,必需使用路由器的第一个以太口,即Ethernt0(对2500系列等),Ethernet0/0(对2600系列等),其它系列略有差别,可根据使用手册进行确定。

②在使用连接电缆时,一定要用交叉线,因这种情况属DTE与DCE之间的连接。

③在运行tftp server的PC 机上,一定要有相应的路由器的IOS印象文件,可以通过多种渠道和多种方式获得该文件。

④tftp server的地址可以随意定义,但必须与路由器定义的地址在同一网段上。

Cisco3640 升级IOS启动失败--探讨分析

昨天在为一台Cisco 3640升级IOS,并加装了三个NM模块(一个NM-2FE2W;一个NM-2CE1U;一个NM-2V并加装两个VIC-2FXO)现将升级3640时的CRT显示贴出来,让大家看看是什么问题导致的启动失败。

ID MEMORY_REQ TYPE

00003B 0X001AA000 Two CE1 - Unbalanced (75 Ohm - Coax)

000065 0X0002E500 Four port Voice PM

0000D8 0X00178610 Dual Fast Ethernet Combo Port Module, 2 WAN

0X000F3BB0 public buffer pools

0X00211000 public particle pools

TOTAL: 0X006556C0

If any of the above Memory Requirements are

"UNKNOWN", you may be using an unsupported

configuration or there is a software problem and

system operation may be compromised.

Rounded IOMEM up to: 7Mb.

Using 10 percent iomem. [7Mb/64Mb]

Restricted Rights Legend

Use, duplication, or disclosure by the Government is

subject to restrictions as set forth in subparagraph

(c) of the Commercial Computer Software - Restricted

Rights clause at FAR sec. 52.227-19 and subparagraph

(c) (1) (ii) of the Rights in Technical Data and Computer

Software clause at DFARS sec. 252.227-7013.

cisco Systems, Inc.

170 West Tasman Drive

San Jose, California 95134-1706

Cisco Internetwork Operating System Software

IOS (tm) 3600 Software (C3640-IS-M), Version 12.2(8)T4, RELEASE SOFTWARE (fc1) TAC Support: https://www.wendangku.net/doc/8f9609220.html,/tac

Copyright (c) 1986-2002 by cisco Systems, Inc.

Compiled Fri 03-May-02 16:58 by ccai

Image text-base: 0x60008930, data-base: 0x61558000

%ERR-1-GT64010: Fatal error, Parity error on master read

cause=0x0110E083, mask=0x0CD01F00, real_cause=0x00100000

bus_err_high=0x00000000, bus_err_low=0x31000000, addr_decode_err=0x14000470 r0 = FFFFFFFF r1 = FFFFFFFF r2 = 0 r3 = 62320000 r4 = 0

r5 = 4 r6 = 0 r7 = 14AA9148 r8 = 0 r9 = 0

r10 = 0 r11 = 0 r12 = 0 r13 = 14 r14 = 0

r15 = F4240 r16 = 0 r17 = 1 r18 = 0 r19 = 0

r20 = 0 r21 = 3401C100 r22 = FFFFFFFF r23 = FFFF00FF r24 = 0

r25 = 6044BE58 r26 = 0 r27 = 2B5 r28 = 0 r29 = 20000000

r30 = 0 r31 = 0 r32 = FFFFFFFF r33 = FFFFFFFF r34 = FFFFFFFF

r35 = FFFFFFFF r36 = FFFFFFFF r37 = FFFFFFFF r38 = FFFFFFFF r39 = FFFFFFFF

r40 = FFFFFFFF r41 = FFFFFFFF r42 = FFFFFFFF r43 = FFFFFFFF r44 = FFFFFFFF

r45 = FFFFFFFF r46 = FFFFFFFF r47 = FFFFFFFF r48 = 0 r49 = 627F7414

r50 = 0 r51 = 2 r52 = 0 r53 = 3041F001 r54 = 0

r55 = 30410000 r56 = FFFFFFFF r57 = FFFFFFFF r58 = 0 r59 = 626EEBE0

r60 = FFFFFFFF r61 = FFFFFFFF r62 = 0 r63 = 60FBC8D8

sreg = 3401E103 mdlo_hi = 0 mdlo = 9C4

mdhi_hi = 0 mdhi = 0 badvaddr_hi = FFFFFFFF

badvaddr = FFFFFFFF cause = FFFFFFFF epc_hi = 0

epc = 60FBC200 err_epc_hi = FFFFFFFF err_epc = FFFFFFFF

%ERR-1-FATAL: Fatal error interrupt, reloading

err_stat=0x10

=== Flushing messages (00:00:07 UTC Mon Mar 1 1993) ===

Queued messages:

No fault history 0xFFFFFFFF. Need 11.1 (2) or

higher ROM

SYSTEM INIT: INSUFFICIENT MEMORY TO BOOT THE IMAGE!

System Bootstrap, Version 11.1(20)AA2, EARLY DEPLOYMENT RELEASE SOFTWARE (fc1) Copyright (c) 1999 by cisco Systems, Inc.

PLC指令集整理

西门子PLC S7-200指令集 一、基本位操作指令 1. 逻辑取(装载)及线圈驱动指令 (1)LD(load):常开触点逻辑运算的开始。 LDN(load not):常闭触点逻辑运算的开始(对操作数的状态取反)=(OUT):线圈驱动(赋值指令)。对同一元件只能使用一次。 (2)指令格式 2. 触点串联指令A(And),AN(And not) (1)A(And):串联连接常开触点。 AN(And not)串联连接常闭触点。 (2)指令格式 3. 触点并联指令:O(OR),ON(ORNOT) (1)O(OR):并联连接常开触点。 ON:并联连接常闭触点。 (2)指令格式

4. 逻辑环节(电路块)的串联指令ALD (1)ALD(And load) :用于串联连接并联触点组成的电路块。(2)指令格式 5. 逻辑环节(电路块)的并联指令OLD (1)OLD(OR load) :用于并联连接串联触点组成的电路块。(2)指令格式

6. 置位/复位指令S/R (1)置位指令S:使能输入有效后从起始位S-bit开始的N个位置“1”并保持。 复位指令R:使能输入有效后从起始位S-bit开始的N个位清“0”并保持。 (2)指令格式 7. 脉冲生成指令EU/ED (1)EU指令:在EU指令前的逻辑运算结果有一个上升沿时(由OFF→ON)产生一个宽度为一个扫描周期的脉冲,驱动后面的输出线圈。 ED指令:在ED指令前有一个下降沿时产生一个宽度为一个扫描周期的脉冲,驱动其后线圈。 (2)指令格式 8. 定时器指令 (1)通电延时定时器(TON)、有记忆的通电延时定时器(TONR)和失电延时定时器(TOF) (2)指令格式

cpu指令集

CPU_多媒体指令集解释 CPU依靠指令来计算和控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。从现阶段的主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分,而从具体运用看,如Intel的MMX(Multi Media Extended)、SSE、 SSE2(Streaming-Single instruction multiple data-Extensions 2)和AMD的3DNow!等都是CPU的扩展指令集,分别增强了CPU的多媒体、图形图象和Internet等的处理能力。我们通常会把CPU的扩展指令集称为"CPU的指令集"。 精简指令集的运用 在最初发明计算机的数十年里,随着计算机功能日趋增大,性能日趋变强,内部元器件也越来越多,指令集日趋复杂,过于冗杂的指令严重的影响了计算机的工作效率。后来经过研究发现,在计算机中,80%程序只用到了20%的指令集,基于这一发现,RISC精简指令集被提了出来,这是计算机系统架构的一次深刻革命。RISC体系结构的基本思路是:抓住CISC 指令系统指令种类太多、指令格式不规范、寻址方式太多的缺点,通过减少指令种类、规范指令格式和简化寻址方式,方便处理器内部的并行处理,提高VLSI器件的使用效率,从而大幅度地提高处理器的性能。 RISC指令集有许多特征,其中最重要的有: 1. 指令种类少,指令格式规范:RISC指令集通常只使用一种或少数几种格式。指令长度单一(一般4个字节),并且在字边界上对齐。字段位置、特别是操作码的位置是固定的。 2. 寻址方式简化:几乎所有指令都使用寄存器寻址方式,寻址方式总数一般不超过5个。其他更为复杂的寻址方式,如间接寻址等则由软件利用简单的寻址方式来合成。 3. 大量利用寄存器间操作:RISC指令集中大多数操作都是寄存器到寄存器操作,只以简单的Load和Store操作访问内存。因此,每条指令中访问的内存地址不会超过1个,访问内存的操作不会与算术操作混在一起。 4. 简化处理器结构:使用RISC指令集,可以大大简化处理器的控制器和其他功能单元的设计,不必使用大量专用寄存器,特别是允许以硬件线路来实现指令操作,而不必像CISC 处理器那样使用微程序来实现指令操作。因此RISC处理器不必像CISC处理器那样设置微程序控制存储器,就能够快速地直接执行指令。 5. 便于使用VLSI技术:随着LSI和VLSI技术的发展,整个处理器(甚至多个处理器)都可以放在一个芯片上。RISC体系结构可以给设计单芯片处理器带来很多好处,有利于提高性能,简化VLSI芯片的设计和实现。基于VLSI技术,制造RISC处理器要比CISC处理器工作量小得多,成本也低得多。 6. 加强了处理器并行能力:RISC指令集能够非常有效地适合于采用流水线、超流水线和超标量技术,从而实现指令级并行操作,提高处理器的性能。目前常用的处理器内部并行操作技术基本上是基于RISC体系结构发展和走向成熟的。 正由于RISC体系所具有的优势,它在高端系统得到了广泛的应用,而CISC体系则在桌面系统中占据统治地位。而在如今,在桌面领域,RISC也不断渗透,预计未来,RISC将要一

ARM指令集详解(超详细!带实例!)要点

算术和逻辑指令 ADC : 带进位的加法 (Ad dition with C arry) ADC{条件}{S} , , dest = op_1 + op_2 + carry ADC将把两个操作数加起来,并把结果放置到目的寄存器中。它使用一个进位标志位,这样就可以做比32 位大的加法。下列例子将加两个128 位的数。 128 位结果: 寄存器0、1、2、和3 第一个128 位数: 寄存器4、5、6、和7 第二个128 位数: 寄存器8、9、10、和11。 ADDS R0, R4, R8 ; 加低端的字 ADCS R1, R5, R9 ; 加下一个字,带进位 ADCS R2, R6, R10 ; 加第三个字,带进位 ADCS R3, R7, R11 ; 加高端的字,带进位 如果如果要做这样的加法,不要忘记设置S 后缀来更改进位标志。 ADD : 加法 (Add ition) ADD{条件}{S} , , dest = op_1 + op_2 ADD将把两个操作数加起来,把结果放置到目的寄存器中。操作数 1 是一个寄存器,操作数2 可以是一个寄存器,被移位的寄存器,或一个立即值:

ADD R0, R1, R2 ; R0 = R1 + R2 ADD R0, R1, #256 ; R0 = R1 + 256 ADD R0, R2, R3,LSL#1 ; R0 = R2 + (R3 << 1) 加法可以在有符号和无符号数上进行。 AND : 逻辑与 (logical AND) AND{条件}{S} , , dest = op_1 AND op_2 AND将在两个操作数上进行逻辑与,把结果放置到目的寄存器中;对屏蔽你要在上面工作的位很有用。操作数1 是一个寄存器,操作数2 可以是一个寄存器,被移位的寄存器,或一个立即值: AND R0, R0, #3 ; R0 = 保持 R0 的位0和 1,丢弃其余的位。 AND 的真值表(二者都是1 则结果为1): Op_1 Op_2 结果 0 0 0 0 1 0 1 0 0 1 1 1 BIC : 位清除 (Bi t C lear) BIC{条件}{S} , , dest = op_1 AND (!op_2)

CMD指令集

CMD指令集 ASSOC 显示或修改文件扩展名关联。 AT 计划在计算机上运行的命令和程序。 ATTRIB 显示或更改文件属性。 BREAK 设置或清除扩展式CTRL+C 检查。 CACLS 显示或修改文件的访问控制列表(ACLs)。CALL 从另一个批处理程序调用这一个。 CD 显示当前目录的名称或将其更改。 CHCP 显示或设置活动代码页数。 CHDIR 显示当前目录的名称或将其更改。 CHKDSK 检查磁盘并显示状态报告。 CHKNTFS 显示或修改启动时间磁盘检查。 CLS 清除屏幕。 CMD 打开另一个Windows 命令解释程序窗口。COLOR 设置默认控制台前景和背景颜色。 COMP 比较两个或两套文件的内容。 COMPACT 显示或更改NTFS 分区上文件的压缩。CONVERT 将FAT 卷转换成NTFS。您不能转换 当前驱动器。 COPY 将至少一个文件复制到另一个位置。 DA TE 显示或设置日期。 DEL 删除至少一个文件。 DIR 显示一个目录中的文件和子目录。DISKCOMP 比较两个软盘的内容。 DISKCOPY 将一个软盘的内容复制到另一个软盘。DOSKEY 编辑命令行、调用Windows 命令并创建宏。ECHO 显示消息,或将命令回显打开或关上。ENDLOCAL 结束批文件中环境更改的本地化。 ERASE 删除至少一个文件。 EXIT 退出CMD.EXE 程序(命令解释程序)。 FC 比较两个或两套文件,并显示 不同处。 FIND 在文件中搜索文字字符串。 FINDSTR 在文件中搜索字符串。 FOR 为一套文件中的每个文件运行一个指定的命令FORMAT 格式化磁盘,以便跟Windows 使用。FTYPE 显示或修改用于文件扩展名关联的文件类型。GOTO 将Windows 命令解释程序指向批处理程序中某个标明的行。 GRAFTABL 启用Windows 来以图像模式显示 扩展字符集。 HELP 提供Windows 命令的帮助信息。

MIPS指令集汇总

功能 应用实例 LB 从存储器中读取一个字节的数据到寄存器中 LB R1, 0(R2) LH 从存储器中读取半个字的数据到寄存器中 LH R1, 0(R2) LW 从存储器中读取一个字的数据到寄存器中 LW R1, 0(R2) LD 从存储器中读取双字的数据到寄存器中 LD R1, 0(R2) L.S 从存储器中读取单精度浮点数到寄存器中 L.S R1, 0(R2) L.D 从存储器中读取双精度浮点数到寄存器中 L.D R1, 0(R2) LBU 功能与LB指令相同,但读出的是不带符号的数据LBU R1, 0(R2) LHU 功能与LH指令相同,但读出的是不带符号的数据LHU R1, 0(R2) LWU 功能与LW指令相同,但读出的是不带符号的数据LWU R1, 0(R2) SB 把一个字节的数据从寄存器存储到存储器中 SB R1, 0(R2)

把半个字节的数据从寄存器存储到存储器中 SH R1,0(R2) SW 把一个字的数据从寄存器存储到存储器中 SW R1, 0(R2) SD 把两个字节的数据从寄存器存储到存储器中 SD R1, 0(R2) S.S 把单精度浮点数从寄存器存储到存储器中 S.S R1, 0(R2) S.D 把双精度数据从存储器存储到存储器中 S.D R1, 0(R2) DADD 把两个定点寄存器的内容相加,也就是定点加 DADD R1,R2,R3 DADDI 把一个寄存器的内容加上一个立即数 DADDI R1,R2,#3 DADDU 不带符号的加 DADDU R1,R2,R3 DADDIU 把一个寄存器的内容加上一个无符号的立即数 DADDIU R1,R2,#3 ADD.S 把一个单精度浮点数加上一个双精度浮点数,结果是单精度浮点数ADD.S F0,F1,F2 ADD.D 把一个双精度浮点数加上一个单精度浮点数,结果是双精度浮点数ADD.D F0,F1,F2

通用客显指令集

ESC/POS命令集明细表 1.STX B n波特率设置命令 ACSII码格式:STX B n 0<=n<=5 十进制格式:[002][066]n 48<=n<=53 十六进制格式:[02H][42H]n 30H<=n<=35H 说明:改变系统的波特率(上电开机时缺省波特率为:2400bit/s),这个命令一般不需用到,使用缺省设定即可。 ASCII n 十进制n 十六进制n 波特率 0 48 30H 9600 1 49 31H 4800 2 50 32H 2400 3 51 33H 1200 4 52 34H 600 5 53 35H 300 2.STX L d1 d2 d3 d4控制显示状态灯 ACSII码格式:STX L d1 d2 d3 d4 d=0、1 十进制格式:[002][076]d1 d2 d3 d4 d=048、049 十六进制格式:[02H][4CH]d1 d2 d3 d4 d=30H、31H 说明:控制状态灯相应位的亮灭。 当d1=0时,单价字符灭;d1=1时,单价字符亮 当d2=0时,总计字符灭;d2=1时,总计字符亮 当d3=0时,收款字符灭;d3=1时,收款字符亮 当d4=0时,找零字符灭;d4=1时,找零字符亮 3.STX M开钱箱命令 ACSII码格式:STX M 十进制格式:[002][077] 十六进制格式:[02H][4DH] 说明:通过顾客显示屏开启钱箱。 4.CLR清屏命令 ASCII码格式:CLR 十进制格式:[012] 十六进制格式:[0CH] 说明:清除屏幕上的字符。 5.CAN 清除光标行命令 ASCII 码格式:CAN 十进制格式:[024] 十六进制格式:[18H] 说明:清除光标行(数码行)上的字符,光标移动到第1位置。一般不需使用,只使用ESC Q A d1d2d3…dn CR命令即可。 6.ESC @初始化命令 ASCII码格式:ESC @

[原创]cpu指令集

[原创]cpu指令集 cpu指令集 CPU依靠指令来计算和控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。从现阶段的主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分,而从具体运用看,如Intel的MMX(Multi Media Extended)、SSE、 SSE2(Streaming-Single instruction multiple data-Extensions 2)和AMD的3DNow!等都是CPU的扩展指令集,分别增强了CPU的多媒体、图形图象和Internet等的处理能力。我们通常会把CPU的扩展指令集称为"CPU的指令集"。 精简指令集的运用 在最初发明计算机的数十年里,随着计算机功能日趋增大,性能日趋变强,内部元器件也越来越多,指令集日趋复杂,过于冗杂的指令严重的影响了计算机的工作效率。后来经过研究发现,在计算机中,80,程序只用到了20,的指令集,基于这一发现,RISC精简指令集被提了出来,这是计算机系统架构的一次深刻革命。RISC体系结构的基本思路是:抓住CISC指令系统指令种类太多、指令格式不规范、寻址方式太多的缺点,通过减少指令种类、规范指令格式和简化寻址方式,方便处理器内部的并行处理,提高VLSI器件的使用效率,从而大幅度地提高处理器的性能。 RISC指令集有许多特征,其中最重要的有: 1. 指令种类少,指令格式规范:RISC指令集通常只使用一种或少数几种格式。指令长度单一(一般4个字节),并且在字边界上对齐。字段位置、特别是操作码的位置是固定的。

arm指令集基础系列

ARM指令和指令系统: 指令是指示计算机某种操作的命令,指令的集合称为指令系统。指令系统的功能强弱很大程度上决定了这类计算机智能的高低,它集中地反应了微处理器的硬件功能和属性。 ARM指令在机器中的表示格式是用32位的二进制数表示。如ARM中有一条指令为ADDEQS R0,R1,#8; 其二进制代码形式为: 31~28 | 27~25 | 24~21 | 20 | 19~16 | 15~12 | 11~0 0000 | 001 | 0100 | 1 | 0001 | 0000 | 0000 0000 1000 cond |opcode | Rn | Rd | Op2 ARM指令格式一般如下: {}{s}{,} 格式中< >的内容是必不可少的,{ }中的内容可忽略 表示操作码。如ADD表示算术加法 {} 表示指令执行的条件域。如EQ、NE等,缺省为AL。 {S} 决定指令的执行结果是否影响CPSR的值,使用该后缀则指令执行结果影响CPSR 的值,否则不影响 表示目的寄存器 表示第一个操作数,为寄存器 表示第二个操作数,可以是立即数。寄存器和寄存器移位操作数 ARM指令后缀:S、! S后缀:指令中使用S后缀时,指令执行后程序状态寄存器的条件标志位将被刷新,不使用S后缀时,指令执行后程序状态寄存器的条件标志将不会发生变化。S后缀常用于对条件进行测试,如是否有溢出,是否进位等,根据这些变化,就可以进行一些判断,如是否大于,相等,从而影响指令执行的顺序。 !后缀:如果指令地址表达式中不含!后缀,则基址寄存器中的地址值不会发生变化。加上此后缀后,基址寄存器中的值(指令执行后)= 指令执行前的值+ 地址偏移量(1)!后缀必须紧跟在地址表达式后面,而地址表达式要有明确的地址偏移量 (2)!后缀不能用于R15(PC)的后面 (3)当用在单个地址寄存器后面时,必须确信这个寄存器有隐性的偏移量,例如“STMDB R1!,{R3,R5,R7}”。此时地址基址寄存器R1的隐性偏移量为4(一条指令占32位,即4个字节) 指令的条件码:31-28位4个字节存储,共16个条件码 条件码助记符后缀标志含义 0000 EQ Z置位相等 0001 NE Z清零不相等 0010 CS C置位无符号数大于或等于0011 CC C清零无符号数小于 0100 MI N置位负数 0101 PL N清零正数或零

[设计]cpu指令集

[设计]cpu指令集 cpu指令集 CPU_多媒体指令集解释 CPU依靠指令来计算和控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。指令的强弱也是CPU的重要指标,指令集是提高微处理器效率的最有效工具之一。从现阶段的主流体系结构讲,指令集可分为复杂指令集和精简指令集两部分,而从具体运用看,如Intel的MMX(Multi Media Extended)、SSE、 SSE2(Streaming-Single instruction multiple data-Extensions 2)和AMD的3DNow!等都是CPU的扩展指令集,分别增强了CPU的多媒体、图形图象和Internet等的处理能力。我们通常会把CPU的扩展指令集称为"CPU的指令集"。 精简指令集的运用 在最初发明计算机的数十年里,随着计算机功能日趋增大,性能日趋变强,内部元器件也越来越多,指令集日趋复杂,过于冗杂的指令严重的影响了计算机的工作效率。后来经过研究发现,在计算机中,80,程序只用到了20,的指令集,基于这一发现,RISC精简指令集被提了出来,这是计算机系统架构的一次深刻革命。RISC体系结构的基本思路是:抓住CISC指令系统指令种类太多、指令格式不规范、寻址方式太多的缺点,通过减少指令种类、规范指令格式和简化寻址方式,方便处理器内部的并行处理,提高VLSI器件的使用效率,从而大幅度地提高处理器的性能。 RISC指令集有许多特征,其中最重要的有: 1. 指令种类少,指令格式规范:RISC指令集通常只使用一种或少数几种格式。指令长度单一(一般4个字节),并且在字边界上对齐。字段位置、特别是操作码的位置是固定的。

cpu的基本指令集

指令集 1997年Intel公司推出了多媒体扩展指令集MMX(MultiMedia eXtensions),它包括57条多媒体指令。MMX指令主要用于增强CPU对多媒体信息的处理能力,提高CPU处理3D图形、视频和音频信息的能力。 SSE指令集 Streaming SIMD Extensions 由于MMX指令并没有带来3D游戏性能的显著提升,1999年Intel公司在Pentium III CPU产品中推出了数据流单指令序列扩展指令(SSE)。SSE兼容MMX 指令,它可以通过SIMD(单指令多数据技术)和单时钟周期并行处理多个浮点来有效地提高浮点运算速度。 在MMX指令集中,借用了浮点处理器的8个寄存器,这样导致了浮点运算速度降低。而在SSE指令集推出时,Intel公司在Pentium III CPU中增加了8个128位的SSE指令专用寄存器。而且SSE指令寄存器可以全速运行,保证了与浮点运算的并行性。 SSE2指令集 在Pentium 4 CPU中,Intel公司开发了新指令集SSE2。这一次新开发的SSE2指令一共144条,包括浮点SIMD指令、整形SIMD指令、SIMD浮点和整形数据之间转换、数据在MMX寄存器中转换等几大部分。其中重要的改进包括引入新的数据格式,如:128位SIMD整数运算和64位双精度浮点运算等。为了更好地利用高速缓存。另外,在Pentium 4中还新增加了几条缓存指令,允许程序员控制已经缓存过的数据。 SSE3指令集 相对于SSE2,SSE3又新增加了13条新指令,此前它们被统称为pni(prescott new instructions)。13条指令中,一条用于视频解码,两条用于线程同步,其余用于复杂的数学运算、浮点到整数转换和SIMD浮点运算。 SSE4指令集 SSE4又增加了50条新的增加性能的指令,这些指令有助于编译、媒体、字符/文本处理和程序指向加速。 SSE4指令集将作为Intel公司未来“显著视频增强”平台的一部分。该平台的其他视频增强功能还有Clear Video技术(CVT)和统一显示接口(UDI)支持等,其中前者是对ATi AVIVO技术的回应,支持高级解码、后处理和增强型3D功能。 3D Now!扩展指令集

指令集结构简介

Introduction to MIPS Instruction Set Architecture The MIPS used by SPIM is a 32-bit reduced instruction set architecture with 32 integer and 32 floating point registers. Other characteristics are as follows: 1. Addressing modes: LIKE RISC, MIPS is a load-store architecture with only one addressing mode that is Displacement Mode. The following two instructions show how these modes are used. Load /Reading data from memory LW R2, 100(R3) The …LW? mnemonic means Load a Word (four bytes of data) fro m memory. R2 is destination to where the data will be loaded. Previous value of R2 will be over written. In displacement mode the physical address is calculated by adding R3 and 100 (Value of R3 + 100). So if R3 is 20, the final address will 120 and R2 will have a copy of 4 bytes of data stored at memory address 120. Note that value of R3 will remain unchanged. General Format is LW rt, Imm(rs), where Imm is a 16-bit value. Storing/Writing a word to memory SW R5, 100(R6) The …SW? mnemonic means Store a Word (four bytes of data) to memory R5 provides the source value to be written to memory at address R6 +100. So if R6 = 45, this instruction will store the value of R5 at memory location 145. IMPORTANT: Note that value of R5 and R6 remain unchanged, only the memory location at address (100+R6) get a copy of data in R5. General Format is SW rt, Imm(rs), where Imm is a 16-bit value. In MIPS this is an immediate type (I-Type) instruction with following format: Note all MIPS instructions are 32-bit (4-bytes) with left most 6-bits as opcode. For LW 6-bit opcode is 1000112 and for store word it 1010112. Since there are 32 registers, so 5-bits are used to specify a register field. Bit→31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Field 6-Bit Op Code rs Field rt Field 16-bit Immediate field Exercise 1: What will be 32-bit hex code for the above two examples. Bit→31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Field

C 语 言 指 令 集

main《主涵数》 auto《{加在涵数名前}自动储存类变量》------------------短 register《{加在涵数名前}寄存器储存类变量》| extern《{加在涵数名前}外部储存类{可以不加}》| static《{加在涵数名前}静态储存类变量》----------------长 void《没反回值》 for《{3个条件语句}循环》 while《{循环》 do while《{前do循环体语句,后while条件语句}循环》 if《{else补充语句,该短语只可有一个}{else if短语可有N个}条件》 switch()《{case条件:程序段}{default条件不满足程序段}{break结束语}开关》goto《没条件转向》 break《{适合于各种方式的循环}结果语》 continue《判断结束语》 return《反回语句》 bool《布尔型变量》 int《整型》-----------------------------低 unsigned《没符号字符型》| long《长整型》| double《双精度浮点型》------------------高 short《短整型》 unsigned《没符号整型》 unsigned short《没符号短整型》 unsigned long《没符号长整型》 char《字符型》 float《单精度浮点型》 ()《括号》-----------------------优 []《下标》先 ,《合成表达式》级------结合性:左到右 →,.《成员》: return《返回》-------------------0 !《{真为假,假为真}非》-------------------------优 ~《位非》先 ++《{前缀表达式增1.后缀表达式不增1}增1》级 --《{前缀表达式减1.后缀表达式不减1}减1》: -《求反》1------结合性:右到左(())《强制类型》| *《{指针运算符}取内容》| &《{指针运算符}取地址》| sizeof《字节数》--------------------------------| *《乘》--------------优---------------------------------------|

Auto CAD 基本指令集

(一)基础命令 1、直线l (line) 2、圆 c (circle) 3、圆弧a (arc) 4、椭圆el (ellipse) 5、矩形rec (rectang) 6、点po (plint) 7、多段线pl (pline) 8、多线ml (mledit) 9、构造线xl (xline) 10、样条曲线spl (spline) 11、云线形revcloud 12、建块b (block) 13、插入块I(insert) 14、图案添充h (bh) (bhatch) 15、建域reg (region) 16、写块w 17、输入多行文字t (mtext) 18、文字样式st 19、拼写检查sp 20、特性ch 21、将多行文字改为单行文字x 22、对象选择过滤器fi 23、输出数据exp 24、图层特性管理器la (layer) 25、视图V 26、平移P 27、视图缩放z (zoom) 28、图形界限limits (A4纸张大小为:297,210) 29、特性匹配ma 修改工具 1、删除e (erase) 2、拉伸s (stretch) 3、移动m (move) 4、偏移o (offset) 5、复制co(copy) 6、镜像mi (mirror) 7、阵列ar (array) 8、旋转ro (rotate) 9、修剪tr (trim) 10、比列缩放sc (scale) 11、延伸ex (extend) 12、打断br (break) 13、倒角cha (chamfer) 14、圆角f (fillet) 15、炸开explode 开关按扭 F1:帮助F2:文本窗口(查看输入的命令) F3:对象捕捉开关F4:数字化仪开关 F5:等轴测平面(上、右、左)F6:坐标开关 F7:栅格开关F8:正交开关 F9:捕捉开关F10:极轴开关 F11:对象追踪开关 剪切:ctrl+x 复制:ctrl+C 粘贴:ctrl+V 带基点复制ctrl+shift+C 清除:del 全选:ctrl+A 1、对象特性 ADC, *ADCENTER(设计中心“Ctrl+2”) CH, MO *PROPERTIES(修改特性“Ctrl+1”) MA, *MATCHPROP(属性匹配) ST, *STYLE(文字样式) COL, *COLOR(设置颜色) LA, *LAYER(图层操作) LT, *LINETYPE(线形)

51单片机汇编指令集(附记忆方法)

51单片机汇编指令集 一、数据传送类指令(7种助记符) MOV(英文为Move):对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送; MOVC(Move Code)读取程序存储器数据表格的数据传送; MOVX (Move External RAM) 对外部RAM的数据传送; XCH (Exchange) 字节交换; XCHD (Exchange low-order Digit) 低半字节交换; PUSH (Push onto Stack) 入栈; POP (Pop from Stack) 出栈; 二、算术运算类指令(8种助记符) ADD(Addition) 加法; ADDC(Add with Carry) 带进位加法; SUBB(Subtract with Borrow) 带借位减法; DA(Decimal Adjust) 十进制调整; INC(Increment) 加1; DEC(Decrement) 减1; MUL(Multiplication、Multiply) 乘法; DIV(Division、Divide) 除法; 三、逻辑运算类指令(10种助记符) ANL(AND Logic) 逻辑与; ORL(OR Logic) 逻辑或; XRL(Exclusive-OR Logic) 逻辑异或; CLR(Clear) 清零; CPL(Complement) 取反; RL(Rotate left) 循环左移; RLC(Rotate Left throught the Carry flag) 带进位循环左移; RR(Rotate Right) 循环右移; RRC (Rotate Right throught the Carry flag) 带进位循环右移; SWAP (Swap) 低4位与高4位交换; 四、控制转移类指令(17种助记符) ACALL(Absolute subroutine Call)子程序绝对调用; LCALL(Long subroutine Call)子程序长调用; RET(Return from subroutine)子程序返回; RETI(Return from Interruption)中断返回; SJMP(Short Jump)短转移; AJMP(Absolute Jump)绝对转移; LJMP(Long Jump)长转移; CJNE (Compare Jump if Not Equal)比较不相等则转移;

全部指令集

加減法指令及例程 ADD{}{S} ,, 加法指令Rd=op1 ADC{}{S} ,, 带进位的加法指令Rd=!op1 SUB{}{S} ,, 减法指令Rd=Rn+op2 RSB{}{S} ,, 反向减法指令Rd=Rn+op2+carry SBC{}{S} ,, 带借位减法指令Rd=Rn-op2 RSC{}{S} ,, 带借位的反向减法指令Rd=op2-Rn AREA EXAMPLE3,CODE,READONLY;/*声明一段名为EXAMPLE3的CODE*/ ENTRY ;/*指定函数的入口*/ ST ART MOV R0,#0xFF;/*把#0xFF传送到R0*/ MOV R1,#0xEF000000;/*把#0XEF000000传送到R1*/ MOV R2,#0x2F000000;/*把#0x2F000000传送到R2*/ MVN R3,#0Xff ;/*把#0xFF取反后传送到R3*/ ADD R4,R2,R1;/*把R2加R1的值传送到R4*/ ADDS R5,R2,R1;/*把R2加R1的值传送到R5,s表示会影响cpsr*/ ADCS R6,R2,R1;/*把R2加R1的值,再加上carry的值后传送到R6. ;s表示值会影响cpsr*/ SUB R4,R2,R1 ;/R2减R1的值传送到R4*/ SUBS R4,R2,R1;/*R2减R1的值传送到R4, s表示值会影响cpsr*/ RSB R5,R2,R1;/*R1减R2的值传送到R5*/ RSBS R5,R2,R1;/*R1减R2的值后传送到R5, s表示会影响cpsr*/

PLC指令集

欧姆龙PLC基本指令有十二条:1:LD指令从母线开始的常开触点2:LD-NOT 从母线开始的唱闭触点3:OUT 输出逻辑运输按结果4:OUT-NOT 将逻辑操作的结果反向输出倒一个指定的继电器。5:AOD 敞开住店的串联6:AND-NOT 常闭触电的串联7:OR 常开触点的并联8:OR-NOT 常闭触电的并联9:AND-LD 两个程序块串联10:OR-LD 两个程序块并联11:NOT 用于常闭触点与LD,AND,OR,OUT,配合使用12:END 表示程序结束 欧姆龙CPM1A系列PLC功能指令1.空操作指令NOP(0 0)2.结束指令END(01)3.互锁指令IL(02)和互锁清除指令ILC(0 3)IL和ILC指令应当成对配合使用,否则出错。IL/ILC指令的功能是:如果控制IL的条件成立(即ON),则执行互锁指令。若控制IL的条件不成立(即OFF),则IL与ILC 之间的互锁程序段不执行,即位于IL/ILC之间的所有继电器均为OFF,此时所有定时器将复位,但所有的计数器,移位寄存器及保持继电器均保持当前值。4.跳转开始指令JMP(0 4)和跳转结束指令JME(0 5)这两条指令不带操作数,JMP/JME指令应配对使用,否则PLC显示出错。5.逐位移位指令SFT(10)又称移位寄存器指令6.锁存指令KEEP(11)。7.前沿微分脉冲指令DIFU(13)和后沿微分脉冲指令DIFD (14)8.快速定时器指令TIMH(15)定时器TIM/TIMX 高速定时器TIMH(015)/TIMHX 超高速定时器TMHH(540)/TMHHX 累计定时器TTIM/TTIMX 长时间定时器TIML/TIMLX 多输出定时器MTIM/MTIMX9.通道移位指令WSFT(16)又称字移位指令。10.可逆计数器指令CNTR(12)。11.比较指令CMP(20)本指令的功能是将S(源通道)中的内容与D(目标通道)的内容进行比较,其比较结果送到PLC的内部专用继电器25505、05506、25507中进行处理后输出。12.数据传送指令MOV(21)和数据求反传送指令MOVN(22)这两条指令都是用于数据的传送。13.进位置位指令STC(40)和进位复位位指令CLC(41)这两条指令的功能是将进位标志继电器25504置位(即置ON)或强制将进位标志继电器25504复位(即置OFF)。14.加法指令ADD(30)。15.减法指令SUB(31)本指令与ADD指令相似,是把两个四位BCD数作带借位减法,差值送入指定通道。以上介绍是CPM1A系列PLC一些常用的专用指令,还有一些未作介绍,C200H系列PLC除了基本指令和CPM1A系列PLC相同外,很多功能指令也相同,另外又增加了一些功能指令,读者可以根据不同型号的PLC按其使用功能的不同参阅使用手册加以学习和掌握。 三菱plc基本指令LD LDI OUT AND ANI OR ORI ORB ANB 多重输出指令MPS进栈MRD读栈MPP出栈主控MC/MCR 自保持及解除SET/RST 空操作NOP 脉冲输出指令PLS/PLF END 顺控指令步进STL返回RET 功能指令程序流程CJ CALL SRET IRET EI DI FEND WDT FOR NEXT 传送和比较CMP ZCP MOV SMOV CML BMOV FMOV XCH BCD BIN 四则运算和逻辑运算ADD SUB MUL DIV INC DEC AND OR XOR NEG 循环和移位ROR ROL RCR RCL SFTR SFTL WSFR WSFL SFWR SFRD 数据处理ZRST DECO ENCO SUM BON MEAN ANS ANR SOR FLT 高速处理REF REFF MTR HSCS HSZ SPD PLSY PWM PLSR 便利命令IST SER ABSD INCD TIMR STMR ALT RAMP ROTC SORT 外部机器I/O TKY HKY DSW SEGD SEGL ARWS ASC PR FROM TO 外部设备SER RS PRUN ASCI HEX CCD VRRD VRSC PID F2外部模块MNET ANRD ANWR RMRD RMMN BLK MCDE

相关文档