c语言计算机培训,C语言计算机基础学习||新手入门必看
本次內容筆者將完全拋棄傳統教學的形式,通過自己所學所聞得出來的心得,用通俗易懂的語言結合生活,來讓大家更好的認識計算機編程,更好的入門計算機基礎。
筆者也想用自己的論述告訴大家,專業知識有時會比較枯燥乏味點,但當它生活聯系起來時,便會發現其中蘊含著無數多前人的智慧。它們和生活的聯系是如此的密切。
本篇文章你們能學到:
為什么編程語言要這樣發展的?
生活中的進制思想
計算機為什么要使用二進制
位、字節與二進制聯系
編程語言的發展趨勢
為什么要有編譯軟件
編譯原理
編程語言都有哪幾種
C語言是誕生于貝爾實驗室,它是在1970年,由丹尼斯里奇博士在B語言的基礎上發展完整出來的。也正因為如此,丹尼斯博士被譽為“C語言之父”。
從這里我們可以知道,大多數語言的出現都是從別的語言基礎上逐漸發展完善得來的。
那么在C語言誕生之前,我們的程序員是靠什么來編程的?
那么讓我們簡單來看看編程語言的發展。
在計算機誕生之初,人們是利用機器語言0和1來編程。關于0和1,這也是我們常說的二進制語言。如果單純從進制轉換角度來看,那么其實就是考我們的數學換算能力。可是,它絕不是單純的數學轉換的,在兩個數字的背后可隱藏著許多具體的東西。
我們生活最習慣的進制就是十進制了,這個進制思想從出生開始,爸爸媽媽教我們數數字的時候就開始灌輸到我們的腦子里了,包括我們所接受的數學教育也是基于10進制上的。現在,我們馬上就要進入計算機的世界了,而計算機可不認識十進制數呢,它是二進制的,而想要理解計算機那就要按照它的規則來。
我們該如何從十進制思想束縛中掙脫出來,進入二進制的世界呢?那么,接下我們看看也許以前我們從來都沒有思考的問題,來幫助大家更好的理解二進制。
比如十進制的數字就是0~9,如果我們想用十進制表示比9大的數字如10,如果純用一位數字來表示是不可能的,因為10進制中單位數字最大的就是9,那么又要怎么做呢??大家可以思考下。
其實也不難想到,我們平時在生活上想用手勢暗示對方這是數字10時,我們會怎么做呢?那自然會伸出一個手指和一個拳頭。
十進制的發明者就考慮用多位數字來表示比9大的數字。進一位,表達為10,依次類推,就可以用0~9的數字表示比9大的任意數了。那么你想用二進制表示比1大的數字,那么應該怎么表示呢?自然就能想到,得用兩位數字來表示,因為二進制所用最大數字中最大的就是1。。。。自然而然,當我們想表示2時就用01表示,表示4就用100。。
也正是這種用多位數字表達任意數的思想產生了多種進制。常見進制就有二進制、八進制、十進制、十六進制。
看了那么多的進制,同學們可能會想,為什么要發明那么多的進制呢,用十進制不就可以了嗎?那多好,貼近我們正常人的思維。
其實所有進制的出現也是為了方便我們的生活啊,只是因為用途與我們常規生活不一樣。為什么我們在日常生活中要用十進制,而不是采用八進制、二進制、十六進制呢?因為我們有十個手指阿,而且手也是最容易出現在我們的視線當中的,所以對于我們人類來說,采用十進制思想是最好的。
其實我們一開始也是對計算機采用十進制的,后來發現不可行啊。
因為計算機不同,它可不是人,它既沒有手指,也沒有大腦,它只是一堆廢鐵。對于通了電的它來說,它就只有兩種狀態,那就是通電和斷電。聰明的人類利用它這種特性,決定采用0和1來表示它。
所以嚴格來說,關于二進制,在數學上它就是進制換算,但對于計算機而言,它們只是一種符號。如果用一個電子開關來表示的話,1就是斷開,0就是閉合。如果用電平來表示的話,1就是高電平,0就是低電平。
回到剛才所說,計算機是可以用來計算和存儲數據。但在剛剛筆者的論述理解中,計算機只是機器,它只有通電和斷電這兩種狀態呢。那么它又是怎么和數字聯系到一起的呢?
我們可以這樣想,如果一根線的電平高低能代表兩種狀態,那么2根線會有什么樣的組合呢?
那就是00、01、10、11這四種狀態了,那么8根線呢?學過排列和組合的我們知道,那就是一共有2^8(2的八次方 =
256)種狀態。我們計算機就是常常用8根線放在一起,同時計數,就能表示0~255,一共256種狀態了。所以我們計算機的數據單位是這樣的,將一根線表示為“位”,將8根線或者8位稱為一個字節。
我們C語言中有個數據類型為char,它的是一個字節的,那么它能存儲的數值范圍多少呢?請大家思考下。
原來,計算機的計數也沒那么什么嘛,只是幾根線的電平高低組合。我們人類就是將它們的狀態當成我們的數字。比如一個8位的計算器,那么我們把它的狀態組合第一種狀態0000
0000當做是我們的數學中的0,那255應該怎么用狀態表示呢?當然是1111 1111了。
接下來展示下三代語言的代碼編寫,比如我們寫代碼計算兩個數相加,
那么我們的編程是這樣寫的,如下圖所示:
在這里,我們通過三代語言的實例比較中,可以很直觀看到了我們編寫代碼的難度越來越小了,代碼量也在減小,從起初的0和1到利用英文單詞來助記(如ADD在英文單詞就是相加的意思),再到利用數學語言來表達。我們可以發現,我們的編程語言在以簡單、代碼量越來越小的趨勢發展中。
那么這里為什么機器可以讀懂a+b呢?是不是變聰明了呢?當然不是,機器還是機器,它還是只能認識0和1。那為什么人們還是可以讓機器看懂a+b的意思呢?原來啊,我們這里有個逆向編譯的過程
在這里充當編譯的就是編譯軟件,我們有很多種叫法,IDE,編譯環境,開發環境都是他。高級語言不止一種,不同的高級語言有不同的編譯軟件。我們將要學習的C語言便是比較底層的高級語言,屬于面向結構語言,它使用的編譯環境就是Visual
C++6.0(這個軟件可以去網上下載,該公眾號也有提供)。現在的高級語言有很多種了,比較熱門的就有Java、Python、C++等,這些是屬于面向對象的語言。面向對象的語言也都是基于面向結構語言的基礎上發展而來的。
總結
以上是生活随笔為你收集整理的c语言计算机培训,C语言计算机基础学习||新手入门必看的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2024 款宝马 X5 防弹版官图发布:
- 下一篇: hmi开发软件c语言,组态,HMI,软件