مشخصات مقاله
-
1891
-
0.0
-
14406
-
0
-
0
Data - Type ها
Data - Types
هنگامی که متلب با یک متغیر جدید برخورد می کند، آن متغیر را ایجاد کرده و یک فضایی از حافظه را به آن اختصاص می دهد.
اگر متغیری در حال حاضر وجود داشته باشد، متلب محتوای اصلی را با محتوای جدید جابجا می کند و فضای زیادی را در مواقع ضروری به آن اختصاص می دهد.
مثال
Total = 42
عبارت بالا یک ماتریس یک در یک با نام 'Total' ایجاد می کند و به اندازه 42 واحد فضا اشغال می کند.
انواع Data Type ها در متلب
متلب دارای 15 نوع داده می باشد. هر data type به صورت یک آرایه یا ماتریس ذخیره شده است. کمترین سایز این آرایه ها یا ماتریس ها 0 در 0 می باشد و این سایز می تواند به هر عددی رشد پیدا کند.
جدول زیر data type های رایج در متلب را نمایش می دهد.
|
Data Type |
Description |
|
int8 |
8-bit اعداد علامت دار |
|
uint8 |
8-bit اعداد بدون علامت |
|
int16 |
16-bit اعداد علامت دار |
|
uint16 |
16-bit اعداد بدون علامت |
|
int32 |
32-bit اعداد علامت دار |
|
uint32 |
32-bit اعداد بدون علامت |
|
int64 |
64-bit اعداد علامت دار |
|
uint64 |
64-bit اعداد بدون علامت |
|
single |
داده عددی با دقت ساده |
|
double |
داده عددی با دقت double |
|
logical |
مقادیر منطقی 0 یا 1، به ترتیب نشان دهنده درست یا غلط |
|
char |
( ها ذخیره می شوندcharactersرشته ها مانند برداری از ) character داده |
|
cell array |
آرایه خانه های ایندکس شده، هر جفت ذخیره یک آرایه با بعد مختلف و نوع داده |
|
structure |
ساختاری مانندC، هر ساختاری دارای فایل های نامگذاری شده جفت ذخیره یک آرایه با بعد مختلف و نوع داده |
|
function handle |
اشاره به یک تابع |
|
user classes |
user-defined اشیا ساخته شده از یک کلاس |
|
java classes |
اشیا ساخته شده از یک کلاس جاوا |
یک فایل اسکریپت شامل کدهای زیر ایجاد کنید.
str = 'Hello World!'
n = 2345
d = double(n)
un = uint32(789.50)
rn = 5678.92347
c = int32(rn)
وقتی کد های بالا کامپایل و اجرا می شوند، نتیجه زیر تولید می شود.
str = Hello World!
n = 2345
d = 2345
un = 790
rn = 5678.9
c = 5679
تبدیل Data Type
متلب توابع مختلفی برای تبدیل ارائه داده است، یک مقدار از یک نوع داده به یکدیگر.
جدول زیر توابع تبدیل data type را نمایش می دهد.
|
Function |
Purpose |
|
char |
تبدیل به آرایه character (رشته) |
|
int2str |
تبدیل داده عدد صحیح به رشته |
|
mat2str |
تبدیل ماتریس به رشته |
|
num2str |
تبدیل عدد به رشته |
|
str2double |
doubleتبدیل رشته به |
|
str2num |
تبدیل رشته به عدد |
|
native2unicode |
Unicodeتبدیل بایت های عددی به کاراکتر |
|
unicode2native |
به تبدیل های عددیUnicode تبدیل کاراکتر های |
|
base2dec |
تبدیل رشته عددی پایه به عدد اعشاری |
|
bin2dec |
تبدیل رشته عدد باینری (دودویی) به عدد اعشاری |
|
dec2base |
تبدیل عدد اعشاری به رشته عددی پایه |
|
dec2bin |
تبدیل اعشاری به عدد دودویی در رشته |
|
dec2hex |
تبدیل عدد اعشاری به عدد هگزا دسیمال در رشته |
|
hex2dec |
تبدیل رشته هگزا دسیمال به عدد اعشاری |
|
hex2num |
تبدیل رشته هگزا دسیمال به عدد double |
|
num2hex |
تبدیل single ها و double ها به رشته هگزا دسیمال IEEE |
|
cell2mat |
تبدیل آرایه سلولی به آرایه عددی |
|
cell2struct |
structure تبدیل آرایه سلولی به آرایه |
|
cellstr |
Characterایجاد آرایه سلولی رشته ها از آرایه |
|
mat2cell |
تبدیل آرایه به آرایه سلولی با خانه های اندازه متفاوت |
|
num2cell |
تبدیل آرایه به آرایه سلولی با خانه های اندازه یکسان |
|
struct2cell |
به آرایه سلولیstructure تبدیل |
تعیین Data Type
متلب توابع مختلفی برای یکسان سازی data type یک متغیر ارائه می دهد. جدول زیر توابعی برای تعیین data type یک متغیر ارائه می دهد.
|
Function |
Purpose |
|
is |
وضعیت شناسایی |
|
isa |
مشخص می کند که آیا ورودی شی کلاس مشخصی است |
|
iscell |
مشخص می کند که آیا ورودی آرایه سلولی است |
|
iscellstr |
مشخص می کند که آیا ورودی آرایه سلولی رشته هاست |
|
ischar |
مشخص می کند که آیا آیتم آرایه کاراکتر است |
|
isfield |
استstructure مشخص می کند که آیا ورودی فیلد آرایه |
|
isfloat |
مشخص می کند که آیا ورودی آرایه نقطه شناور است |
|
ishghandle |
برای کنترل کردن کنترل های شی گرافیکی |
|
isinteger |
مشخص می کند که آیا ورودی آرایه عدد صحیح است |
|
isjava |
مشخص می کند که آیا ورودی شی جاوا است |
|
islogical |
مشخص می کند که آیا ورودی آرایه منطقی است |
|
isnumeric |
مشخص می کند که آیا ورودی آرایه عددی است |
|
isobject |
مشخص می کند که آیا ورودی شی متلب است |
|
isreal |
بازبینی هنگامی که ورودی آرایه حقیقی باشد |
|
isscalar |
مشخص می کند که آیا ورودی اسکالر است |
|
isstr |
مشخص می کند که آیا ورودی آرایه کاراکتر است |
|
isstruct |
مشخص می کند که آیا ورودی آرایه structure است |
|
isvector |
مشخص می کند که آیا ورودی یک بردار است |
|
class |
تعیین کلاس یک شی |
|
validateattributes |
بازبینی اعتبار سنجی آرایه |
|
whos |
با سایر و نوع آنworkspaceلیست متغیر ها در |
مثال
یک فایل اسکریپت با کد زیر ایجاد کنید.
x = 3
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)
x = 23.54
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)
x = [1 2 3]
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
x = 'Hello'
isinteger(x)
isfloat(x)
isvector(x)
isscalar(x)
isnumeric(x)
وقتی فایل را اجرا می کنیم، نتیجه زیر حاصل می شود.
x = 3
ans = 0
ans = 1
ans = 1
ans = 1
ans = 1
x = 1177/50
ans = 0
ans = 1
ans = 1
ans = 1
ans = 1
x =
1 2 3
ans = 0
ans = 1
ans = 1
ans = 0
x = Hello
ans = 0
ans = 0
ans = 1
ans = 0
ans = 0