《单片机课后习题内容答案.doc》由会员分享,可在线阅读,更多相关《单片机课后习题内容答案.doc(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、.第 1 章 单片机的概述1、除了单片机这一名称外,单片机还可称为( 微控制器)和( 嵌入式控制器)。2、单片机与普通微型计算机的不同之处在于其将( CPU)、(存储器)和(I/O 口)三部分,通过内部(总线)连接在一起,集成于一块芯片上。3、在家用电器中使用单片机应属于微型计算机的( B)。A、 辅助设计应用 B、 测量、控制应用 C、 数值计算应用 D、 数据处理应用4、微处理器、微计算机、微处理机、CPU、单片机、嵌入式处理器它们之间有何区别?答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。而微计算机、单片机它们都是一个完整的计算机系统,单片机是集
2、成在一个芯片上的用于测控目的的单片微计算机。嵌入式处理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微处理器。目前多把嵌入式处理器多指嵌入式微处理器,例如ARM7、ARM9等。嵌入式微处理器相当于通用计算机中的CPU。与单片机相比,单片机本身(或稍加扩展)就是一个小的计算机系统,可独立运行,具有完整的功能。而嵌入式微处理器仅仅相当于单片机中的中央处理器。为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。5、MCS-51系列单片机的基本型芯片分别为哪几种?它们的差别是什么?答:MCS-51系列单片机
3、的基本型芯片分别为:8031、8051和8751。它们的差别是在片内程序存储器上。8031无片内程序存储器、8051片内有4K 字节的程序存储器ROM ,而8751片内有集成有4K字节的程序存储器 EPROM。6、为什么不应当把8051单片机称为MCS-51系列单片机?答:因为MCS-51系列单片机中的“MCS ”是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。7、AT89S51单片机相当于MCS-51系列单片机中哪一种型号的产品?“s ”的含义是什么?答:相当于MCS-51系列中的87C51 ,只不过是AT89S5
4、1芯片内的4K 字节Flash存储器取代了87C51片内的4K字节的EPROM。“s ”表示含有串行下载的Flash存储器。8、什么是嵌入式系统?答:广义上讲,凡是系统中嵌入了“嵌入式处理器”,如单片机、DSP、嵌入式微处理器,都称其为“嵌入式系统”。但多数人把 “嵌入”嵌入式微处理器的系统,称为“嵌入式系统”。 目前“嵌入式系统”还没有一个严格和权威的定义。目前人们所说的“嵌入式系统”,多指后者。9、嵌入式处理器家族中的单片机、DSP、嵌入式微处理器各有何特点?它们的应用领域有何不同?答:单片机体积小、价格低且易于掌握和普及,很容易嵌入到各种通用目的的系统中,实现各种方式的检测和控制。单片机
5、在嵌入式处理器市场占有率最高,最大特点是价格低,体积小。 DSP是一种非常擅长于高速实现各种数字.信号处理运算(如数字滤波、FFT、频谱分析等)的嵌入式处理器。由于对其硬件结构和指令进行了特殊设计,使其能够高速完成各种复杂的数字信号处理算法。广泛地用于通讯、网络通信、数字图像处理,电机控制系统,生物信息识别终端,实时语音压解系统等。这类智能化算法一般都是运算量较大,特别是向量运算、指针线性寻址等较多,而这些正是DSP的长处所在。与单片机相比,DSP具有的实现高速运算的硬件结构及指令和多总线,DSP处理的算法的复杂度和大的数据处理流量以及片内集成的多种功能部件更是单片机不可企及的。嵌入式微处理器
6、的基础是通用计算机中的CPU,它的地址总线数目较多能扩展较大的存储器空间,所以可配置实时多任务操作系统(RTOS) 。RTOS是嵌入式应用软件的基础和开发平台。正由于嵌入式微处理器能运行实时多任务操作系统,所以能够处理复杂的系统管理任务和处理工作。因此,广泛地应用在移动计算平台、媒体手机、工业控制和商业领域(例如,智能工控设备、ATM机等)、电子商务平台、信息家电(机顶盒、数字电视)以及军事上的应用。第 2 章 AT89S511、在 AT89S51 单片机中,如果采用 6MHz 晶振,一个机器周期为( 2s )。2、AT89S51 的机器周期等于(1 个机器周期等于 12)个时钟振荡周期。3、
7、 内部 RAM 中,位地址为 40H、88H 的位,该位所在字节的字节地址分别为(28H)和(88H)。4、片内字节地址为 2AH 单元最低位的位地址是(50H ;片内字节地址为88H 单元的最低位的位地址为 88H。5、若A中的内容为63H,那么,P标志位的值为( 0)。6、AT89S51单片机复位后,R4所对应的存储单元的地址为(04H ),因上电时PSW=(00H 。这时当前的工作寄存器区是( 0 )组工作寄存器区。7、内部RAM中,可作为工作寄存器区的单元地址为( 00H-1FH)。8、通过堆栈操作实现子程序调用时,首先把( PC )的内容入栈,以进行断点保护。调用子程序返回时,再进行
8、出栈保护,把保护的断点送回到( PC ),先弹出来的是原来( )中的内容。9、AT89S51单片机程序存储器的寻址范围是由程序计数器 PC的位数所决定的,因为AT89S51的PC是 16位的,因此其寻址的范围为( 64)KB。10、下列说法(C、D)是正确的。A、使用AT89S51且引脚 时,仍可外扩64KB的程序存储器。( )1EAB、区分片外程序存储器和片外数据存储器的最可靠的方法是看其位于地址范围的低端还是高端。( )C、在 AT89S51中,为使准双向的 IO口工作在输入方式,必须事先预置为1。( )D、PC可以看成是程序存储器的地址指针。( )11、下列说法(A)是正确的。A、AT8
9、9S51中特殊功能寄存器(SFR)占用片内RAM 的部分地址。( ).B、片内 RAM的位寻址区,只能供位寻址使用,而不能进行字节寻址。( ) C、AT89S51 共有26个特殊功能寄存器,它们的位都是可用软件设置的,因此,是可以进行位寻址的。( )D、SP称之为堆栈指针,堆栈是单片机内部的一个特殊区域,与RAM无关。( )。12、在程序运行中,PC的值是:( C )A、当前正在执行指令的前一条指令的地址。B、当前正在执行指令的地址。C、当前正在执行指令的下一条指令的首地址。D 、控制器中指令寄存器的地址。13、 下列说法(A、B)是正确的。A、PC是一个不可寻址的特殊功能寄存器。( )B、单
10、片机的主频越高,其运算速度越快。( )C、在 AT89S51单片机中, 1个机器周期等于1s。( )D、特殊功能寄存器SP内存放的是栈顶首地址单元的内容。( )14、 下列说法(A、B、C)是正确的。 A、AT89S51单片机进入空闲模式,CPU停止工作。片内的外围电路仍将继续工作。( ) B、AT89S51 单片机不论是进入空闲模式还是掉电运行模式后,片内RAM和SFR中的内容均保持原来的状态。( ) C、AT89S51 单片机进入掉电运行模式, CPU和片内的外围电路(如中断系统、串行口和定时器)均停止工作。( ) D、AT89S51单片机掉电运行模式可采用响应中断方式来退出。( )15、
11、AT89S51单片机的片内都集成了哪些功能部件?答:AT89S51单片机的片内都集成了如下功能部件: 1个微处理器(CPU );128个数据存储器(RAM )单元 ; 4K Flash程序存储器;4个8位可编程并行I/O口(P0口、P1口、P2 口、P3口) 1个全双工串行口;2个16位定时器/计数器;1个看门狗定时器;一个中断系统, 5个中断源,2个优先级;26个特殊功能寄存器(SFR),1个看门狗定时器。16、说明AT89S51单片机的 引脚接高电平或低电平的区别。EA答:当 脚为高电平时,单片机读片内程序存储器(4K 字节Flash)中的EA内容,但在PC值超过0FFFH(即超出4K字节
12、地址范围)时,将自动转向读外部程序存储器内的程序;当 脚为低电平时,单片机只对外部程序存储器的地址为0000HFFFFH中的内容进行读操作,单片机不理会片内的4K字节的Flash程序存储器。17、 64K程序存储器空间中有5个单元地址对应AT89S51单片机5个中断源的中断入口地址,请写出这些单元的入口地址及对应的中断源。.答:64K程序存储器空间中有5个特殊单元分别对应于 5个中断源的中断服务程序入口地址,见下表:表 5个中断源的中断入口地址18、当AT89S51单片机运行出错或程序陷入死循环时,如何摆脱困境?答: 按下复位按钮。第三章 C51 1、C51 在标准 C 的基础上,扩展了哪几种
13、数据类型?答:bit sbit sfr 。2、C51 有哪几种数据存储类型?其中“idata,code,xdata,pdata”各对应AT89C51 单片机的哪些存储空间?答: (1)、 C51 数据存储类型有: bdata, data, idata, pdata, xdata,code。(2)、 “idata,code ,xdata ,pdata”各对应的存储空间数据存储类型 对应单片机存储器idata 片内 RAM 00H FFH,共 256 字节 code ROM 0000HFFFFH ,共 64K 字节 xdata 片外 RAM 0000H FFFFH,共 64K 字节pdata 片外
14、 RAM 00HFFH,共 256 字节3、bit 与 sbit 定义的位变量有什么区别?(答案非标准,网上凑起来的 )答:bit : 编译时分配空间;sbit 只能在外部定义全局变量。 bit 和 sbit 都是 C51扩展的变量类型。sbit 要在最外面定义,就是说必须定义成外部变量、sbit 定义的是 SFR(特殊功能寄存器 )的 bit。sbit: 指示说明性说明; bit 可以在外部或内部定义。4、说明 3 中数据存储模式(1)small 模式(2)compact 模式(3)large 模式之间的差别。答:若声明 char varl,则在使用 SMALL 存储模式下, varl 被定
15、位在 data 存储区,在使用 COMPACT 模式下,varl 被定位在 idata 存储区;在 LARGE 模式下,varl 被定位在 xdata 存储区中。5、编写 C51 程序,将片外 2000H 为首址的连续 10 个单元的内容,读入到片内入口地址 中断源0003H 外部中断0 ()INT000BH 定时器0 (T0)0013H 外部中断1 ()INT001BH 定时器1 (T1)0023H 串行口.部 40H 到 49H 单元中。答:程序设计思路采用指针的方法。选用指针 px, px 指向 char 型数据位于 xdata, 赋值 px=2000H选用指针 px1, px1 指向
16、char 型数据位于 data,赋值 px1=40H在 for 循环中,*px1=*px; 并且当 i+时,px+ , px1+,。采用数组的方法。xdata uchar buf110 _at_ 0x2000data uchar buf210 _at_ 0x40;在 for 循环中, buf2i = buf1i ; 采用指针的方法参考程序如下:#define uchar unsigned charvoid main( ) / 主函数 data uchar i;uchar xdata *px ; / 指针 px,指向 char 型数据位于 xdatauchar data *px1 ; / 指针
17、px1,指向 char 型数据位于 datapx=0x2000;px1=0x40;for(i=0; i10; i+,px+,px1+) *px1=*px;while(1);采用数组的方法参考程序如下:#define uchar unsigned charxdata uchar buf110 _at_ 0x2000;/位于 xdata 数组 buf10地址 2000Hdata uchar buf210 _at_ 0x40; /位于 data 数组 buf20地址 40Hvoid main( ) / 主函数 data uchar i;for(i=0; i10; i+) buf2i = buf1i;
18、while(1);6、do-while 构成的循环与 do-while 循环的区别是什么?答:主要区别是:while 循环的控制出现在循环体之前,只有当 while 后面表达式的值非0 时,才可能执行循环体,因此有可能一次都不执行循环体;在 do-while 构成的循环中,总是先执行一次循环体,然后再判断表达式的值,因此无论如何,循环体至少要被执行一次。第四章应用题无答案 第五章.1、2、双向口和准双向口有什么区别?答:双向口与准双向口的区别主要是:准双向口 I/O 口操作时做数据输入时需要对其置 1,否则若前一位为低电平,后一位输入的电平为高则 MOS 管拉不起来导致出错。而双向口则不需要做
19、此动作,因为双向口有悬浮态。准双向口就是做输入用的时候要有向锁存器写 1 的这个准备动作,所以叫准双向口。真正的双向口不需要任何预操作可直接读入读出。1:准双向一般只能用于数字输入输出,输入时为弱上拉状态(约 50K 上拉),端口只有两种状态:高或低。2:双向除用于数字输入输出外还可用于模拟输入输出,模拟输入时端口通过方向控制设置成为高阻输入状态。双向端口有三种状态:高、低或高阻。3:初始状态和复位状态下准双向口为 1,双向口为高阻状态第六章1、若寄存器(IP) = 00010100B,则优先级最高者为(外部中断 1),最低者为 (定时器 T1)。2、下列说法正确的是( D )。A各中断源发出
20、的中断请求信号,都会标记在AT89S51的IE寄存器中B各中断源发出的中断请求信号,都会标记在AT89S51的TMOD寄存器中C各中断源发出的中断请求信号,都会标记在AT89S51的IP 寄存器中D各中断源发出的中断请求信号,都会标记在 AT89S51 的 TCON 与SCON 寄存器中3、在AT89S51的中断请求源中,需要外加电路实现中断撤销的是( A )。A电平方式的外部中断请求B下跳沿触发的外部中断请求C外部串行中断D定时中断4、下列说法正确的是( A、C、D )。A同一级别的中断请求按时间的先后顺序响应B同一时间同一级别的多中断请求,将形成阻塞,系统无法响应C低优先级中断请求不能中断
21、高优先级中断请求,但是高优先级中断请求能中断低优先级中断请求D同级中断不能嵌套5、中断响应需要满足哪些条件?答:一个中断源的中断请求被响应,必须满足以下必要条件:(1)总中断允许开关接通,即IE 寄存器中的中断总允许位 EA=1。(2)该中断源发出中断请求,即该中断源对应的中断请求标志为“1”。(3)该中断源的中断允许位=1,即该中断被允许。(4)无同级或更高级中断正在被服务。第七章1、如果采用的晶振频率为24MHz,定时器计数器工作在方式0、1、2下,其最大定时时间各为多少?答:方式0最长可定时16.384ms;方式1最长可定时131.072ms;.方式2最长可定时512us。2、定时器、计
22、数器作计数器模式使用时,对外界计数器频率有何限制?答:对于12振荡周期为1个机器周期的51单片机,外界信号频率必须小于晶振频率的1/24。对于单振荡周期为1个机器周期的51单片机,外界信号频率必须小于晶振频率(或系统时钟频率)的1/4。3、定时器、计数器的工作方式2有什么特点?适用于哪些场合?打:定时器、计数器的工作方式2具有自动回复初值的特点,适用于精确定时,比如波特率的产生。第八章1、帧格式为 1 个起始位,8 个数据位和 1 个停止位的异步串行通信方式是方式( 1 )。2、下列选项中,( ABDE )是正确的。(A) 串行口通信的第 9数据位的功能可由用户定义。(对)(B) 发送数据的第
23、9数据位的内容在SCON 寄存器的TB8位中预先准备好的。(对)(C) 串行通信帧发送时,指令把TB8位的状态送入发送 SBUF中。(错)(D)串行通信接收到的第9位数据送SCON寄存器的RB8中保存。(对)(E)串行口方式1的波特率是可变的,通过定时器 /计数器T1的溢出率设定。(对)3、串行口工作方式1的波特率是: (C)(A)固定的,为fosc/32 。 (B)固定的,为fosc/16。(C)可变的,通过定时器/计数器 T1 的溢出率设定。(D )固定的,为fosc/64。4、在异步串行通信中,接收方是如何知道发送方开始发送数据的?答:当接收方检测到RXD端从1到0的跳变时就启动检测器,
24、接收的值是3次连续采样,取其中2次相同的值,以确认是否是真正的起始位的开始,这样能较好地消除干扰引起的影响,以保证可靠无误的开始接受数据。5、为什么定时器/计数器T1用作串行口波特率发生器时,常采用方式2?若已知时钟频率,串行通信的波特率,如何计算装入T1的初值 ? 参P128 答:因为定时器/计数器在方式2下,初值可以自动重装,这样在做串口波特率发生器设置时,就避免了执行重装参数的指令所带来的时间误差。设定时器T1方式2的初值为X,计算初值X可采用如下公式:波特率 = 的 溢 出 率定 时 器 132TSMODSMODosc231(56)fX定时器T1的溢出率=计数速率 /(256-X)=f
25、osc/(256-X)*12故计数器初值为256X = 2SMOD fosc/1232波特率6、 若晶体振荡器为 11、0592MHZ,串行口工作于方式 1,波特率为4800b/s,写出用T1作为波特率发生器的方式控制字和计数初值。.答:方式1的波特率 = = 4800 bit/s(T1 工作于方式2))256(13XfoscSMODX=250=FAH经计算,计数初值为FAH,初始化程序如下:ANL TMOD,#0F0H ;屏蔽低4位ORL TMOD,#20H ;T1定时模式工作方式2 MOV TH1,#0FAH ;写入计数初值,波特率为4800b/sMOV TL1,#0FAHMOV SCON
26、,#40H ;串行口工作于方式1解法2:由 (T1 工作于方式2)480653122XfToscSMODSMOD的 溢 出 率定 时 器的 波 特 率方 式得 HFX4654809.653初始化程序如下:ORG 0000HANL TMOD,#0F0H ;屏蔽低4位ORL TMOD,#10H ;T1定时模式方式1MOV TH1,#0FFH ;写入计数初值,为4800b/sMOV TL1,#0F4HMOV SCON,#40H ;串行口工作于方式1MOV PCON,#80H ;串行通信波特率加倍7、为什么AT89S51单片机串行口的方式0帧格式没有起始位( 0)和停止位(1)?答:串行口的方式0为同
27、步移位寄存器输入输出方式,常用于外接移位寄存器,以扩展并行I/O口,一般不用于两个MCS-51之间的串行通信。该方式以fosc/12的固定波特率从低位到高位发送或接收数据。8、直接以 TTL 电平串行传输数据的方式有什么缺点?为什么在串行传输距离较远时,常采用 RS-232C、RS-422A 和 RS-485 标准串行接口,来进行串行数据传输。比较 RS-232C、RS-422A 和 RS-485 标准串行接口各自的优缺点。答:直接以 TTL 电平串行传输数据的方式的缺点是传输距离短,抗干扰能力差。因此在串行传输距离较远时,常采用 RS-232C、RS-422A 和 RS-485 标准串行接口
28、。主要是对传输的电信号不断改进,如 RS-232C 传输距离只有几十米远,与直接以 TTL 电平串行传输相比,采用了负逻辑,增大“0”、“1”信号的电平差。而 RS-422A 和 RS-485 都采用了差分信号传输,抗干扰能力强,距离可达1000 多米。RS-422A 为全双工,RS-485 为半双工。第九章.1、单片机存储器的主要功能是存储(程序)和(数据)。2、在存储器扩展中,无论是线选法还是译码法,最终都是为了扩展芯片的片选端提供(片选)控制。3、起止范围为 0000H-3FFFH 的存储器的容量是(16)KB 。4、在AT89S51单片机中,PC 和DPTR都用于提供地址,但PC是为访
29、问(程序)存储器提供地址,而DPTR是为访问(数据)存储器提供地址。5、11 根地址线可选(2KB)个存储单元,16KB 存储单元需要(14)根地址线。6、4KB RAM 存储器的首地址若为 0000H,则末地址为( 0FFF)H7、试编写一个程序(例如将 05H 和 06H 拼为 56H),设原始数据放在片外数据区 2001H 单元和 2002H 单元中,按顺序拼装后的单字节数放入 2002H。解:本题主要考察正确使用 MOVX 指令对外部存储器的读、写操作。编程思路:首先读取 2001H 的值,保存在寄存器 A 中,将寄存器 A 的高四位和低四位互换,再屏蔽掉低四位,然后将寄存器 A 的值
30、保存到 30H 中,然后再读取2002H 的值,保存在寄存器 A 中,屏蔽掉高四位,然后将寄存器 A 的值与 30H进行或运算,将运算后的结果保存在 2002H 中。ORG 1000HMAIN: MOV DPTR,#2001H ;设置数据指针的初值MOVX A,DPTR ;读取 2001H 的值SWAP A ;A 的高四位和低四位互换ANL A,#0F0H ;屏蔽掉低四位MOV 30H,A ;保存 AINC DPTR ;指针指向下一个MOVX A,DPTR ;读取 2002H 的值ANL A,#0FH ;屏蔽掉高四位ORL A,30H ;进行拼合MOVX DPTR,A ;保存到 2002HEN
31、D8、编写程序,将外部数据存储器中的4000H40FFH单元全部清零。答:本题主要考察对外部数据块的写操作;编程时要注意循环次数和 MOVX指令的使用。ORG 1000HMAIN: MOV A,#0 ;送预置数给 AMOV R0,#00H ;设置循环次数MOV DPTR,#4000H ;设置数据指针的初值LOOP: MOVX DPTR,A ;当前单元清零INC DPTR ;指向下一个单元DJNZ R0,LOOP ;是否结束END9、在 AT89S51 单片机系统中,外接程序存储器和数据存储器共 16 位地址线和8 位数据线,为何不会发生冲突?参 P159 答:因为控制信号线的不同:外扩的 RA
32、M 芯片既能读出又能写入,所以通常都有读写控制引脚,记为和。.外扩 RAM 的读、写控制引脚分别与 AT89S51 的和引脚相连。外扩的 EPROM 在正常使用中只能读出,不能写入,故 EPROM 芯片没有写入控制引脚,只有读出引脚,记为,该引脚与 AT89S51 单片机的相连。10、11、判断下列说法是否正确,为什么?A、由于 82C55 不具有地址锁存功能,因此在与 AT89S51 的接口电路中必须加地址锁存器B、在 82C55 芯片中,决定各端口编址的引脚是 PA1 和 PA0C、82C55 具有三态缓冲器,因此可以直接挂在系统的数据总线上D、82C55 的 PB 口可以设置成方式 2答
33、:(A)错;(B)错;(C)错, 82C55 不具有三态缓冲器;(D)错,82C55 的 B 口只可以设置成方式 0 和方式 1。12、I/O 接口和I/O 端口有什么区别?I/O接口的功能是什么?答:I/O 端口简称I/O 口,常指I/O接口电路中具有端口地址的寄存器或缓冲器。I/O接口是指单片机与外设间的I/O接口芯片;I/O接口功能:(1) 实现和不同外设的速度匹配;(2) 输出数据缓存;(3) 输入数据三态缓冲。一个I/O 接口芯片可以有多个I/O 端口,传送数据的称为数据口,传送命令的称为命令口,传送状态的称为状态口。当然,并不是所有的外设都需要三种接口齐全的I/O接口。13、I/O
34、 数据传送有哪几种方式?分别在哪些场合下使用?答:3种传送方式: (1) 同步传送方式:同步传送又称为有条件传送。当外设速度可与单片机速度相比拟时,常常采用同步传送方式。(2) 查询传送方式:查询传送方式又称为有条件传送,也称异步传送。单片机通过查询得知外设准备好后,再进行数据传送。异步传送的优点是通用性好,硬件连线和查询程序十分简单,但是效率不高。 (3) 中断传送方式:中断传送方式是利用AT89S51本身的中断功能和I/O接口的中断功能来实现I/O数据的传送。单片机只有在外设准备好后,发出数据传送请求,才中断主程序,而进入与外设进行数据传送的中断服务程序,进行数据的传送。中断服务完成后又返
35、回主程序继续执行。因此,中断方式可大大提高工作效率。14、常用的I/O端口编址有哪两种方式?他们各有什么特点?MCS51的I/O端口编址采用的是哪种方式?答:两种。(1) 独立编址方式:独立编址方式就是I/O地址空间和存储器地址空间分开编址。独立编址的优点是I/O地址空间和存储器地址空间相互独立,界限分明。但却需要设置一套专门的读写I/O的指令和控制信号。(2) 统一编址方式:这种方式是把I/O端口的寄存器与数据存储器单元同等对待,统一进行编址。统一编址的优点是不需要专门的I/O指令,直接使用访问数据存储器的指令进行I/O操作。AT89S51单片机使用的是 I/O和外部数据存储器RAM统一编址的方式。