一個程序的基本構(gòu)成及運行過程(世界的最基本運行規(guī)律)
一個程序的基本構(gòu)成及運行過程:
軟件組成:任何程序都是由一條條instruction組成的。Nearly?all?CPUs?follow?the?fetch,?decode?and?execute?steps?in?their?operation,?which?are?
collectively?known?as?the?instruction ?cycle.?After?the?execution?of?an?instruction,?the?entire?process?repeats,?with?the?next?
instruction?cycle?normally?fetching?the?
next-in-sequence?instruction?because?of?the?incremented?value?in?the?program counter.?這樣一來,一個程序的所有的instruction依次經(jīng)過CPU進行運算,直到最后一個instruction不再輸出program counter。在這個CPU處理instruction過程中,每一個instruction都產(chǎn)生bit單元矩陣形式output,而input是bit單元矩陣的一種值,當然inputbit單元矩陣也可以是time out狀態(tài),也算是一種輸入模式。語言的本質(zhì)是符號對應meaning,其中符號就是輸入,meaning就是輸出,自然而然地,machine language的形式就是bit單元矩陣輸入與bit單元矩陣輸出的類似語言的符號-meaning對應關(guān)系,這就是CPU的最基本運算功能。CPU中的control unit、arithmetic logic unit等等功能的軟件部分就是由machine language編寫成的,然后軟件結(jié)合CPU中相應的硬件電路設計就形成了CPU的一個基本功能。Instruction是CPU直接操作的運算單元,必須包括輸入bit單元矩陣和輸出bit單元矩陣。一個程序模塊是一組instruction依次相接進入CPU進行運算,產(chǎn)生的輸出被存在存儲單元,作為其他instruction的輸入。由多個Instruction依次連接組成最底層程序模塊,其編寫語言被稱為machine language,最底層程序模塊就是assembly language的指令,不同的最底層程序模塊組合就對應著不同種類的machine language。由machine language的指令編輯的程序模塊就是更高級編程語言的指令,即由最底層程序模塊組合再一次構(gòu)成的組合,就是更高級編程語言的一個指令。這個過程有點像物理中的一個規(guī)律,最基本的原子只有一百來個,相當于構(gòu)成machine language的instruction種類只有一百來個,而構(gòu)成assembly language的最底層程序模塊集合就相當于原子構(gòu)成的所有分子,所有不同分子構(gòu)成不同組分的材料就相當于更高級編程語言的所有基本指令,由不同材料構(gòu)建的具有特定功能的零件就相當于更更高級編程語言的所有基本指令,用零件組裝出來的、具體有特定功能的產(chǎn)品就相當于最終的產(chǎn)品程序。每一級的程序模塊都是依次連接組合,程序模塊本身就是多個instruction依次連接組成的,CPU直接對instruction進行依次運算,就像一個物件的所有物理化學性質(zhì)都是直接通過原子的電子變化規(guī)律反映的。而instruction一定包括輸入bit單元矩陣和輸出bit單元矩陣,以及instruction自身的program counter和下一條instruction自身的program counter,程序最后一條instruction就不包含下一個program counter,否則就會出現(xiàn)程序循環(huán)bug這種情況?;蛟S超導現(xiàn)象中的恒定電流就是電路中的循環(huán)bug。
上述內(nèi)容是對程序結(jié)構(gòu)的客觀描述,有助于在測試程序、編寫程序過程中對程序結(jié)構(gòu)和運行原理的掌握。在我看來,是很有必要的認知。
一點關(guān)鍵內(nèi)容的總結(jié):instruction的一些必要特征,程序模塊就是instruction依次連接的組合,一個固定的程序模塊就是編程語言的詞匯,對于一個程序模塊的學習,首先確認輸入信號的限制、輸出的種類,然后再去分析輸入與輸出的邏輯關(guān)系,即變化規(guī)律。所以無論多復雜的程序,它的輸入就是instruction的輸入,它的輸出也是instruction的輸出。一些輸出芯片的輸出結(jié)果是對LED燈的控制、對電機的控制、對電磁閥的控制等等,但是這類芯片程序的輸入一定是bit單元矩陣。一些芯片的主板接收電流的模擬信號,然后根據(jù)這些模擬信號輸出bit單元矩陣,作為其他程序模塊的輸入。傳感器將探測到的物理信息轉(zhuǎn)換為電流的模擬信號,或者直接轉(zhuǎn)換為bit單元矩陣,作為其他芯片的輸入。
世界的最基本運行規(guī)律:
原子的帶電荷屬性的輸入就是電磁波、其他的電場、磁場,原子的輸出也包括電磁波、帶電粒子的電場和磁場,但是原子的運動規(guī)律受到質(zhì)量屬性的影響,從而將原子的帶電荷屬性與質(zhì)量屬性結(jié)合在一起。
原子包括電子、質(zhì)子、中子以及其他的帶有質(zhì)量的基本粒子。