VEXcode Pro V5'te Tamsayılar için Değişkenler Oluşturma

The VEX Visual Studio Code Extension has replaced VEXcode Pro V5, which is now end-of-life.

VEXcode Blocks and VEXcode Text remain actively developed and supported for all VEX platforms.

Tam sayıları tutan tipler: char, short, int, long, long long

Bazı örneklere bir göz atalım:

karakter cvar = 50;
karakter cvar = 50;
kısa svar = 50;
int ivar = 50;
uzun lvar1 = 50;
uzun lvar2 = 50;

Temel Aritmetik Operatörler:

Çoğu, temel aritmetik operatörlere ve öncelik sırasına aşinadır: +, -, *, /

Tekli operatörün nasıl kullanılacağına ilişkin bazı örnekler: ++ ve --:

İfade Eşdeğeri Ayrıca Eşdeğerdir
cvar += 5; cvar = cvar + 5;  
++cvar; cvar++; cvar = cvar + 1;
--cvar; cvar--; cvar = cvar - 1;

Değişken++ ve ++değişkene dikkat edin!

++değişken

int x = 10, y = 20; 
X = ++y;

Not: Bu işlemden sonra: X = 21 ve Y de = 21.

değişken++

int x = 10, y = 20; 
X = y++;

Not: Bu işlemden sonra: X = 20 ve Y = 21.


Tamsayı veri türünü karşılaştır

Hem pozitif hem de negatif değere izin veren bir grup veya veri türü vardır - "imzalı". Ancak örtülü olduğu için bunu belirtmenize gerek yoktur. Aşağıya bakınız:

Veri türü En küçük değer En büyük değer
karakter -2 7 veya -128 2 7 - 1 veya 127
kısa -2 15 veya -32.768 2 15 - 1 veya 32.767
int -2 31 veya -2,147,483,648 2 31 – 1 veya 2.147.483.647
uzun -2 31 veya -2,147,483,648 2 31 – 1 veya 2.147.483.647
uzunca -2 63 veya -9,223,372,036,854,775,808 2 63 – 1 veya 9,223,372,036,854,775,807

Yalnızca pozitif değere (imzasız) izin veren bir grup veya veri türü vardır.

Veri türü En küçük değer En büyük değer
imzasız karakter 0 2 8 - 1 veya 255
imzasız kısa 0 2 16 - 1 veya 65.535
imzasız int 0 2 32 – 1 veya 4.294.967.295
imzasız uzun 0 2 32 – 1 veya 4.294.967.295
imzasız uzun uzun 0 2 64 – 1 veya 18.446.744.073.709.551.615

Veri boyutunu nasıl doğrularsınız?

Şimdilik sizeof( ) operatörünü bilmeniz gerekiyor. Bu, bir sonraki bölümde biraz ele alınacak olan "bayt" adı verilen bellek depolama birimini sağlar.

Sizeof(kullanarak yazmanız gereken bayt sayısını gösteren örnek. Bunları kendiniz doğrulamak için bunu deneyin. Başka bir denetleyiciye geçerseniz doğrulamak için her zaman aşağıdakileri yapabilirsiniz.

Brain.Screen.setFont(fontType::mono30);    
Brain.Screen.printAt(1, 20,"char %d byte'a sahiptir", sizeof(char));
Brain.Screen.printAt(1, 50,"kısa %d bayta sahiptir", sizeof(short)); 
Brain.Screen.printAt(1, 80,"int %d bayta sahiptir", sizeof(int));
Brain.Screen.printAt(1, 110, "long'un %d baytı vardır", sizeof(long));
Brain.Screen.printAt(1, 140, "long long %d byte'a sahiptir", sizeof(long long));
Brain.Screen.printAt(1, 170, "float %d bayta sahiptir", sizeof(float));
Brain.Screen.printAt(1, 200, "double %d byte'a sahiptir", sizeof(double));

V5 robotik sisteminin programlama özelliklerini ve yeteneklerini gösteren, temel bileşenleri ve bunların işlevlerini açık ve düzenli bir düzende vurgulayan diyagram.


Bayt ne anlama geliyor?

“Bayt” standart bir veri depolama birimidir.

Bir Bayt = 8 bit. Bir bit, yalnızca 1 ve 0 değerlerine (ikili değer) sahip olabilen en küçük bellek birimidir. Ancak sistemden alabileceğiniz en küçük bellek birimi 1 byte'tır; yani 1,5 bayt vb. isteyemezsiniz.

Char'a bir göz atalım. Kolayca görüntülenecek kadar kısadır.

V5 robotik sisteminin programlama özelliklerini gösteren, temel bileşenleri ve bunların işlevlerini vurgulayan diyagram.

Tamamı 1'lerle doluysa, 28-1 elde edersiniz. Bu değer “unsigned char”ın tutması gereken maksimum değer olmalıdır.

V5 robotunun programlama yeteneklerini gösteren, etkili kodlama ve kontrol için çeşitli sensörleri, motorları ve bağlantıları gösteren diyagram.

Sistem, negatif bir değer vermek için en yüksek dereceli bit ayırır. Dolayısıyla bir “karakter”in maksimum değeri -128 ile 127 arasında değişir. Ancak veri aralığındaki farklılığa rağmen kapasite hala "imzasız karakter" ile aynıdır.

Bilgisayarda İkinin Tamamlayıcısı adı verilen bir işlem kullanılır. Bu, Bitwise işlemi kapsamındaki konuların bir parçasıdır ve bu belgenin kapsamı dışındadır. Bu konu hakkında daha fazla bilgi başka bir belgede tartışılacaktır.


Char ve int arasındaki fark nedir?

"Char" ve "int" için bazı yaygın kullanımlar şunlardır:

karakter var1 = '9'; 
int var2 = 9;

"Char"ın yalnızca 'a', 'b' veya '9' gibi sembolleri tutabileceği yaygın bir yanılgıdır. Bu yanlış.

Aslında "char" türü "int" türüyle aynıdır, tek fark char'ın kapasitesinin yalnızca 1 bayt, int'nin kapasitesinin ise 4 bayt olmasıdır. Bu nedenle, veri boyutu aralığı ikisi arasında farklıdır. Bunu yukarıdaki veri aralığı tablosunda görebilirsiniz.

Aşağıdaki kod bölümleri size char ve int hakkında daha net bir görünüm sağlayacaktır.

int iX = '0';
  karakter cX1 = 49;
  karakter cX2 = 50; 

  Brain.Screen.printAt(3, 20, "'%c' =  %dint gösterimi ",iX, iX);
  Brain.Screen.printAt(3, 50, "'%c' =  %dint gösterimi ",cX1, cX1);
  Brain.Screen.printAt(3, 80, "'%c' =  %dint gösterimi ",cX2, cX2);
  Brain.Screen.printAt(3, 140, "Yani '%c' - '%c' =  %d ", cX2, iX, cX2 - cX1);

Çıktı:

'0'ın int gösterimi = 48
'1'in int gösterimi = 49
'2'nin int gösterimi = 50

Yani '2' – '0' = 1

Şunu merak edebilirsiniz: '0' neden 48'i gösteriyor?

Bu da “ASCII Kodu dönüşümü” denilen konulara yol açacaktır. ASCII standardı, 1963'te yayınlanan harika bir IEEE dönüm noktasıdır. Bu, bu makalenin kapsamı dışındadır. ASCII Kod Tablosunu çevrimiçi olarak aramanız önerilir. ASCII Kod Tablosu hakkında çevrimiçi olarak çok sayıda bilgi bulacaksınız.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: