- MATLAB從基礎到精通
- 王薇編著
- 828字
- 2019-01-01 12:47:28
2.1 整型
MATLAB 7.0中的整型數據類型,按照有無符號位可以分為有符號位整數和無符號位整數,而按照數據類型的字節數又可分為8位、16位、32位、64位的整數類型。在使用中主要根據實際存儲的數據的數值大小范圍來確定數據類型,在保證數據精度的同時盡量避免不必要的內存的浪費,提高運算速度。其中有符號位整型需要一個1位來表示數據為負,因此有符號位的整型數據8位、16位、32位、64位的范圍分別為-27~27-1、-215~215-1、-231~231-1、-263~263-1;無符號位的整型8位、16位、32位、64位的范圍分別為0~28-1、0~216-1、0~232-1、0~264-1。
不同類型整型的生成函數如下。
● int8(x):有符號8位整型數據生成。
● int16(x):有符號16位整型數據生成。
● int32(x):有符號32位整型數據生成。
● int64(x):有符號64位整型數據生成。
● uint8(x):無符號8位整型數據生成。
● uint16(x):無符號8位整型數據生成。
● uint32(x):無符號8位整型數據生成。
● uint64(x):無符號8位整型數據生成。
【例2.1】不同類型整型數據的生成。
>> x=int8(12) %有符號8位整型數據x生成,其值為12 x = 12 >> y=uint16(x) %x轉換為無符號16位整型數據y y = 12 >> z=int8(128) %有符號8位整型數據z生成,128超過最大上限,其值為127 z = 127 >> xx=int8(-8) %有符號8位整型數據xx生成,其值為-8 xx = -8 >> yy=uint8(-8) %無符號8位整型數據yy生成,由于負數超過其下限,yy值為0 yy = 0 >> zz=int32(-8) %有符號32位整型數據zz生成,其值為-8 zz = -8 >> whos %查看工作空間的變量 Name Size Bytes Class x 1x1 1 int8 array xx 1x1 1 int8 array y 1x1 2 uint16 array yy 1x1 1 uint8 array z 1x1 1 int8 array zz 1x1 4 int32 array Grand total is 6 elements using 10 bytes >> isinteger(zz) %判斷變量zz數據類型是否為整型 ans = 1 >> x=zeros(3,'uint8') %全零矩陣的生成,并定義其數據類型為8位無符號整型 x = 0 0 0 0 0 0 0 0 0
intmin()和intmax()函數可用于確定整型數據類型的數據范圍,其中intmin()函數用于求數據類型下限,intmax()函數用于求數據類型上限。函數的調用格式如下所示。
● intmin(classname):指導數據類型下限計算。
● intmax(classname):指導數據類型上限計算。
【例2.2】不同整型數據類型數值范圍計算。
>> intmin('int8') %有符號8位整型下限計算 ans = -128 >>intmax('int8') %有符號8位整型上限計算 ans = 127 >> intmin('int32') %有符號32位整型下限計算 ans = -2147483648 >> intmin('uint32') %無符號32位整型下限計算 ans = 0
推薦閱讀
- OpenCV 3和Qt5計算機視覺應用開發
- PyTorch自然語言處理入門與實戰
- MATLAB 2020 從入門到精通
- Web開發的貴族:ASP.NET 3.5+SQL Server 2008
- Hands-On JavaScript High Performance
- Android NDK Beginner’s Guide
- Java程序設計與實踐教程(第2版)
- 鋒利的SQL(第2版)
- Spring Boot Cookbook
- Learning SciPy for Numerical and Scientific Computing(Second Edition)
- 零基礎趣學C語言
- Spring核心技術和案例實戰
- 劍指大數據:企業級數據倉庫項目實戰(在線教育版)
- Terraform:多云、混合云環境下實現基礎設施即代碼(第2版)
- Orchestrating Docker