溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

IT行業(yè):軟件開發(fā)編程思想

發(fā)布時間:2020-07-21 10:59:09 來源:網(wǎng)絡(luò) 閱讀:343 作者:檸檬味芒果 欄目:開發(fā)技術(shù)

IT行業(yè):軟件開發(fā)編程思想


很多人學了C語言,C++,Java仍然不會編程;而有些人沒有學過計算機語言,但有編程的天份;這中間到底缺了什么?


我們來研究一下3個問題:


1.首先我們要了解計算機能完成的工作;


2.了解每種計算機語言在做什么;


3.如何通過計算機語言讓計算機替我們做什么;




1.電子計算機最直接能做什么工作:


電子計算機能直接完成的工作如果細化看,就是在玩二進制數(shù);


a.把二進制數(shù)按位進行左右移動;


b.對二進制數(shù)中的位進行<與,或,非,異或>4種操作;


c.讀地址空間內(nèi)的二進制數(shù)當指令動作;


d.讀地址空間內(nèi)的二進制數(shù)當數(shù)據(jù)操作;


e.保存二進制數(shù)到內(nèi)存空間


f.對二進制數(shù)進行算術(shù)操作,結(jié)果存到內(nèi)存空間


g.......


總結(jié)一下,計算機的工作=數(shù)據(jù)輸入->計算和操作->結(jié)果輸出




2.計算機語言在做什么?


計算機語言只是為了方便書寫命令計算機動作的語法;


機器語言,把命令計算機做原始動作的指令,轉(zhuǎn)換成二進制碼形式,不容易看懂;


匯編語言,把機器語言,轉(zhuǎn)換成英文單詞,方便閱讀識別,但仍不容易看懂;


面向過程語言,把匯編語言,轉(zhuǎn)換成數(shù)學表達式的形態(tài),


面向?qū)ο笳Z言,把數(shù)學表達式,封裝成獨立的輸入數(shù)據(jù)輸出結(jié)果的模塊;


面向應(yīng)用語言,把對象模塊,按照需求自動組合成應(yīng)用組件;(正在發(fā)展中)




3.怎樣讓有限的計算機完成無限的工作?


計算機只能夠保存和計算無符號二進制整數(shù),但我們還是把有符號10進制數(shù),浮點數(shù),文字,聲音,圖片,視頻保存到了計算機里;這其中的關(guān)鍵,就是轉(zhuǎn)換;


計算機所能保存的數(shù)據(jù)是有限制的,想辦法統(tǒng)統(tǒng)轉(zhuǎn)化成二進制;


計算機的容量是有限的,想辦法把相同的數(shù)據(jù)進行無損壓縮滿足容量;


計算機的字長是有限的,把超長的數(shù)據(jù)分解,給計算機分段計算滿足字長;


計算機的計算速度是有限的,研究一個快速的數(shù)學邏輯高效計算;


計算機的xxx是有限的,總有辦法可滿足;


軟件開發(fā)的編程思想


計算機的工作是有限的=數(shù)據(jù)輸入->計算和操作->結(jié)果輸出


1.跟據(jù)程序的需求,將輸入的數(shù)據(jù)轉(zhuǎn)化成計算機能接受的數(shù)據(jù)類型;


2.跟據(jù)計算機有限的工作能力,將計算和操作通過邏輯思維按步驟轉(zhuǎn)化成計算機的動作;


3.將結(jié)果按照要求轉(zhuǎn)化成輸出格式。


第1步,轉(zhuǎn)化數(shù)據(jù)類型,計算機語言已經(jīng)準備了很多基礎(chǔ)數(shù)據(jù)類型和API;


第2步,邏輯思維養(yǎng)成;


第3步,逆轉(zhuǎn)數(shù)據(jù)類型,計算機語言也已經(jīng)準備了很多基礎(chǔ)數(shù)據(jù)類型和API;


第1步和第3步,只要百度查找,看例子就能很快掌握,大多可以分享和拿來主義,但第2步邏輯思維并不能一步登天,思想的養(yǎng)成需要勤奮和努力,和學習寫作文的方法是一樣的,要多看別人的代碼,嘗試著多寫代碼,計算機語言好學,但編程不是學出來的,是花時間寫出來的;好比會寫中國字,并不一定能寫出好作文。


程序:是為實現(xiàn)特定目標或解決特定問題而用計算機語言編寫的代碼;


以計算機的角度講,程序=算法+數(shù)據(jù)結(jié)構(gòu)


數(shù)據(jù)結(jié)構(gòu):指計算機保存數(shù)據(jù)的方法(順序,鏈式,散列,索引)


算法:在計算機有限的結(jié)構(gòu)下,解決問題的具體方法和步驟


過程化語言程序基本流程


1.輸入數(shù)據(jù)


2.檢查數(shù)據(jù)合法性


3.數(shù)據(jù)計算和處理(算法)


4.輸出結(jié)果


開發(fā)的難點,就是算法(邏輯思想)


計算機算法可分為兩大類別:


數(shù)值運算算法:求數(shù)值解,例如求方程的根、求函數(shù)的定積分等。(真正難)


非數(shù)值運算:包括的面十分廣泛,最常見的是用于事務(wù)管理領(lǐng)域,例如圖書檢索、人事管理、行車調(diào)度管理等。(說難不難,但也不易)


總結(jié):


軟件開發(fā)的編程思想,是一種邏輯轉(zhuǎn)化思想,并不是學計算機語言能學會,但可以從寫代碼中間領(lǐng)悟;首先要熟記和理解計算機語言的語法規(guī)則,才能將程序計算的邏輯準確的轉(zhuǎn)化成計算機語言的語法;最后要勤加練習,慢慢養(yǎng)成(極少數(shù)最強大腦除外);


原文鏈接:

http://http://www.xcore.icoc.cc/nd.jsp?id=15&_np=0_322_2


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI