第1章MATLAB基础知识 图15快捷键编辑窗口 Shortcuts☒How to AddWhat's New4HOME因清除命令窗口 图16快捷键工具条 1.4获取帮助信息 MATLAB中的帮助信息非常重要,而且也提供了强大的帮助资料来方便大家查询各类函数的功能。 最常用的方法是在命令窗口中,输入help command,其中command为所要查询的有关命令或函 数,有关某主题的帮助信息会显示在命令窗口中。例如,查询有关命令cc的帮助信息,则输入 >help clc and home the curaor. 帮助信息给出命令CLC的功能和用法,通过See also后面的函数链接可以查询相关函数的帮助信 息,在doc之后的链接可以打开帮助浏览器窗口(见图1-7),也可以直接通过doc命令打开某主题的 帮助窗口,例如 >>doc sink 图1-7帮助窗口
6 PSYCHTOOLBOX工具箱及MATLAB编程实例 当在命令窗口某函数名处按功能键F1时,会弹出如图1-8所示的快捷帮助窗口 。中⊙●热 sin Des 图1-8快捷帮助窗口 按Shin+F1组合键或从菜单选择Help→Function Browser,则会弹出函数在找快捷窗口,输入要查 询的函数,则显示所有与之匹配的选项(见图19),将鼠标移至某个条目上会显示相关的帮助信息(见 图1-10). 图19函数查找窗 mesh Vore Help mesh wi rface heig 图1-10帮助信息窗口
第2章数据类型 MATLAB支持多种数据类型,并且对不同数据类型的处理提供了丰富的函数,而且还可以自定义 数据类型,合理地使用不同类型的数据,一方面可以节省内存的占用空间,另一方面也可以使程序编 制事半功倍。 2.1数值型 数值型包括整数、浮点数和复数。 1.整数 整数又因能够容纳的数值大小的不同分为不同位数的有无符号的整数。由于计算机采用二进制编 码,因此1个字节可以容纳2个数,2个字节可以容纳26个数,4个字节可以容纳2”个数等。不同类 型的整数表示的范围见表2-1。如果表示分值介于0一150之间的功课成绩,则可以使用无符号8位整数: 如果要表示一个国家的人口数,则可以使用无符号32位整数(大约可以表示42.9亿),整数表示范围 如表21所示。 表2.1整数的表示范围 数据类型 值范围 转换函数 有符号8位整数 221 有号6位粉 2521 r16 有符号卫位 有符号64位整数 int6-4 无符号8位整到 02-1 8 无符号16位整安 0-2- uintl6 无符号32位整型 022 uin32 无符号64位整数 0-2-1 uint64 由于MATLAB默认的数据类型为双精度浮点数,使用表2-1中的转换函数可以创建相应的整 类型,例如 >21nts26891): >>de1:2 >whosk Name size Bytes class Attributes 11 nint8 b 1×1 1nt16 1nt3 8 double 通过whos命令可列出当前工作区中所定义的变量信息,其中Name栏为变量名,Sie栏为行列 数,如变量c有1行2列数据:Bytes栏为占用的总字节数:Class为数据类型,Attributes为属性
8 PSYCHTOOLBOX工具箱及MATLAB编程实例 如果数值超出了某种数值类型所能表示的范围,则取该类型能够表示的最大值或最小值,例如, >int8(300) 转换函数还可以将其他数据类型转换成整型,例如 >a-970:uint16(a):比 >whos Name size Bytes Class Attributes a 1×1 double ans 1x1 甚至还可以将字符型数据转换为整型,例如, >str='Hello Matlab';int8 (str) ans 21011081081113277971161089798 转换后的整数为相应字母的ASC码。如果是中文字符,则需要能够包含65535在内的数值类型 (如uintl6或int32等),例如 >>u1nt16(·你好,我的实验)C ans 20320229096529225105303402345439564 函数isinteger可以验证某变量是否为整数,例如 >a=15;isinteger (a) ans 使用函数class可以获知某数据的类型 >a-uint8 (15);class (a) uint8 2.浮点数 浮点数又可以分为单精度(single)和双精度(double),区别在于表示的数值范围不同,单精度浮点 数的存储需要32位,可以表示的数值范围为(-3.4028234663852886e+038~ -1.1754943508222875e-038) 和(1.1754943508222875e-038~3.4028234663852886e+038),双精度数的存储需要64位,可以表示 的数值范围为(-1.7976931348623157e+308~-2.2250738585072014e-308)和(22250738585072014e308 1.7976931348623157+308),由此可见,尽管浮点数所能表示的数值范围不包括零在内,但0.0是浮点 数的特例。由于MATLAB默认的数据类型为双精度浮点数,所以直接赋值操作就将某变量定义为了 双精度浮点数,如果要定义单精度浮点数,则需要使用single转换函数,与双精度浮点数对应的转换 函数为double。例如 >X=48.95 >whose Name Attributes 1x1 double
第2章数据类型 9 利用realmin和realmax函数可以获取双精度浮点数的最小值和最大值,单精度浮点数的最小值和 最大值使用single'作为上述函数的参数即可,例如 >realminte an .2251e-308 >realmax ('single') ans 3.4028e+038 函数isfloat检验某个变量或数是否为浮点数。 3.复数 复数包括:实数部分和虚数部分,直接以x+yi的形式输入或使用complex函数定义复数,例如 >x=5+31 X 5.0000+3.00001 >y-comp1ex(15,30)2 yi5.000+30.001 利用函数real和imag可以获取复数的实数部分和虚数部分,例如 >x-complex(rand(3)rand (3)) 父■ 0.7952+0.65511 0.4456+0.49841 0.7547+0.5853 0.,1869+0.16261 0.6463+0.95971 0.2760+0.22381 0.4898+0.119010.7094+0.34041 0.6797+0.75131 >real(x) ans 0.795 0.4456 0.754 0.276 0.7094 0.679 >imag(x)比 ans s 0.6551 0A094 0.5853 01626 00507 02238 0.1190 0.3404 0.7513 除此之外,MATLAB中使用inf表示无穷大数,NaN表示非数值,即不是一个数。如以O作被除 数时会产生无穷大,而无穷大除以无穷大或0除以0会产生非数值, >>5/02 ans nf >0/0 ans= NaN