程序處理、加工的對象——數據

程序處理、加工的對象——數據

程序設計是用於幹什麼用的呢?

無非就是對數據進行處理。 當我們從事科研和工程項目時,首先當然是結合領域知識對問題進行分析,而後進行數學建模,最後通過計算機進行處理。

在計算機的世界裏,數據代表了對數字模型的抽象化的概念,同時也代表了信息。 結合我們的日常生活,可以想象我們周圍充滿了各種各樣的數據——文字、數字、聲音、圖片、動畫以及更加複雜的多媒體數據。編寫程序的目的就是要處理這些數據。

雖然數據的種類多種多樣,但歸根結底,最基本的兩種數據類型是數字與字符。


如何理解數據 ?

數據的種類多種多樣,但歸根結底,最基本的兩種數據類型是數字與字符

從數學的抽象角度: 對數字而言:標量+矢量

在科研和工程中,必然打交道的是矢量和標量兩種類型。

標量 : 非常簡單,是最基本的數字類型,它是組成矢量和更爲複雜類型的基礎。

矢量 : 現在非常火爆的機器學習、數據挖掘,無時無刻不需要與特徵向量打交道。在C++中有(數組、STL的 vector )。

從數學的抽象角度: 對字符而言:字符+字符串

字符是互聯網中最重要的信息載體,因爲他承載者語言信息。

在科研和工程項目中,也常稱爲文本。它是書面上的語言、讀書、看報、寫文章,都是以文章爲載體,它是互聯網時代最常見、最重要的信息載體。

在 C/C++ 中,是通過字符和字符串的形式進行表示和處理文本。其中字符串是等價於字符構成的數組。


計算機角度:理解數據

計算機編程語言的作用,就是完成從抽象數學模型到計算機具體表示的映射。因此計算機編程語言定義了幾種模型來實現對數字的表示。

比如int num;這裏定義了一個變量num,這裏有兩重含義 :

1 . 首先他對應於數學中的整數,可以進行整數相關的運算;

2 . 其次由於計算機的硬件的限制,這個整數變量不能表示無限大的數據,在傳統的32機器上,最多隻能到(2^32 - 1);

這就是完成了“抽象數學世界”到“計算機現實世界”的映射 。


分別從數學和計算機的角度去理解我們身邊出現的各種各樣的數據,數據分別在數學和計算機的世界裏有不同的表現和實現方式。

在C/C++的世界裏,數據可以分爲基本數據類型和非基本數據類型

1 . 基本數據類型:字符型、整形、浮點型;

2 . 非基本數據類型:在基本數據類型上構建的,是根據用戶的需求構造出來的,目的是爲了表示更加複雜的數據。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章