天天看點

計算機基礎(進制)以及c#入門計算機基礎(進制)以及c#入門

計算機基礎(進制)以及c#入門

一、進制

進制就是進位計數值,是人為定義的一種帶進位機制的計數方法,在計數時采用逢N進1的方式進行計數。

計算機基礎(進制)以及c#入門計算機基礎(進制)以及c#入門

二進制是機器使用的語言,特點是“逢二進一”,二進制在硬體技術上很容易實作,而且儲存的資料具有穩定性。

一般二進制數通常8位一寫,如“0001 1101”,主要是為了配合一位元組等于8位的換算制度。

八進制與十六進制常用于計算機語言中,用于友善換算二進制。八進制是“逢8進1”,而十六進制是“逢16進1”.(十六進制使用0-9,A-F來表示數字)

如:八進制“27”;十六進制“89D”

十進制即為我們日常生活中使用的計數方法。

二、進制轉換

1、十進制轉二、八、十六進制

當我們需要将十進制轉化成其他進制時,常采用“輾轉相除法”進行轉換,以二進制為例:

計算機基礎(進制)以及c#入門計算機基礎(進制)以及c#入門

即,将被轉化數短除進制數,得到下一個整數,并得到一個餘數,一直重複直至被除數為0,将得到的餘數由下往上依次寫出,得到我們需要的進制數。八進制,十六進制同理。

2、其他進制之間的轉換

在進行其他進制的轉換時,我們注意到,由于八進制與十六進制的特殊性(23=8 24=16),我們可以将二進制作為一個轉換的中間進制,進而進行其他進制的轉換,這樣可以友善的将一個數快速的轉換成我們所希望看到的進制。

(1)二進制轉十進制

例如“0101 1010”這個二進制數準換為十進制,我們注意到因為二進制是逢二進一的特性,是以我們容易得知二進制“10”=“21”;“100”=“22”……依次類推。

是以我們将“0101 1010”這個數可以寫為

0 x 27+1 x 26+0 x 25+1 x 24+1 x 23+0 x 22+1 x 21+0 x 20=64+16+8+2=90

這樣就能輕松的将二進制轉換為日常使用的十進制。

(2)八進制、十六進制轉二進制

在這兩個進制轉換時,記住23=8;24=16。因為在準換時可以看到八進制的一位最高為7,換算成二進制為111,即3位能表示的最大二進制。

反過來說,用3位的二進制數,就能完全表示八進制中的一位數字,這樣就得到了八進制與二進制的轉換方法,例如:

将八進制數:26拆開變成2 6,将兩個數分别用二進制表示為2=010 6=110,再組合在一起就得到了二進制數010110;

反之,任取一個二進制數:10011010010,我們将二進制數從後往前3位一劃分,最後缺位的話在前面補0,得到:010 011 010 010,然後每三位轉換成對應的八進制數即可,即:2 3 2 2。

十六進制在操作方法上與八進制無異,隻是将操作位數從3位二進制變成4位二進制即可,因為我們可以發現十六進制的最大位數F換算成二進制就是1111。

三、原碼、反碼、補碼

以一位元組為例,任取一個二進制數:10010110

在二進制中,由于沒有負數,我們人為規定最前面的一位數為符号位,“0”代表正,“1”代表負。這樣一個8位的二進制數,最高隻能有7位來表示。對一個正數來說,原碼、反碼、補碼是一樣的。

對于負數

反碼就是除去符号位,剩下的位,按位取反;

補碼就是反碼+1。

這樣聽起來很簡單,但實際有什麼用呢?考慮以下問題:

1-1=?在十進制中,很容易得到答案——0,但是轉換為二進制:

原碼:0000 0001 + 1000 0001=1000 0010= - 2 ?

反碼:0000 0001 + 1111 1110=1111 1111(變回原碼)=1000 0000= - 0 ?

補碼:0000 0001 + 1111 1111=0000 0000(變回原碼)=0000 0000= 0

可以看到,補碼的存在很好的解決了正負數相加的問題。

四、c#入門

1、c#語言

c#是一門面向對象的,安全的,穩定的,簡單的,由c與c++衍生而出的一款程式設計語言,很好的繼承了前輩們的強大功能,同時變得更加簡潔。可運作于.NET Framewok&.NET Core上。

2、建立第一個c#程式

Using System
class Program
{
   static void Main(string[] args)
   {
      Console.WriteLine("Hello World");
   }
}
           

3、值類型–基本資料類型

計算機基礎(進制)以及c#入門計算機基礎(進制)以及c#入門

4、常量、變量

常量,是一個在程式運作期間無法被改變的量,反言之,變量,就是在程式中可以改變的量。兩者均為資料的容器,在聲明時需要指定資料類型,常量在聲明時要在前面注明const。

const int a = 5;
int b = 10;
           

其中a為常量,b為變量。

變量的定義的格式:類型修飾符 變量名 (= 初始值)

變量的命名規則:

1、隻能由數字 字母 下劃線 或者@組成 ,其中 數字無法開頭,@隻能開頭;

2、不能與系統關鍵字重複;

3、不能使用重複的變量名(c#識别字母大小寫)

4、使用駝峰命名法;

5、見名知意

5、運算符

運算符:簡單介紹兩種:指派運算符與算數運算符。

指派運算符:“=” 用于給變量指派,将右邊的值給左邊的值(優先級較低)

算術運算符:用于數值間的計算,例+、-、*、/、%、++、–

“++”“–”:

如果++在變量前,就先自增,再參與運算;

如果++在變量後,就先運算,再自增;

複合運算符:(算數運算的縮寫形式)如:a+=b ==> a=a+b

表達式:由常量、變量、運算符組成的語句

6、基本輸入輸出表達式

輸出語句:

輸入語句:

Console.ReadLine();//代表讀取一行字元串
Console.Read();//代表讀取一個字元