新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 公路車流量檢測(cè)系統(tǒng)方案分析

公路車流量檢測(cè)系統(tǒng)方案分析

作者: 時(shí)間:2012-05-11 來(lái)源:網(wǎng)絡(luò) 收藏

3 底層軟件

3.1 V8匯編語(yǔ)言

3.1.1 語(yǔ)言格式

V8 的匯編語(yǔ)言以段(section)為單位組織源文件。段是相對(duì)獨(dú)立的、具有特定名稱的、不可分割的指令或者數(shù)據(jù)序列。段可以分為代碼段和數(shù)據(jù)段,代碼段存放執(zhí)行代碼,數(shù)據(jù)段存放代碼運(yùn)行時(shí)需要用到的數(shù)據(jù)。一個(gè)源程序至少需要一個(gè)代碼段,大的程序可以包含多個(gè)代碼段和數(shù)據(jù)段。

V8 的匯編語(yǔ)言源程序經(jīng)過(guò)匯編處理后生成一個(gè)可執(zhí)行的鏡像文件(即.exe 文件),該可執(zhí)行文件包括下面三個(gè)部分:

①一個(gè)或多個(gè)代碼段,代碼段通常是可讀的

②一個(gè)包含初始值的數(shù)據(jù)段,這些數(shù)據(jù)段通常是可讀寫的

③零個(gè)或多個(gè)不包含初始值的數(shù)據(jù)段,這些數(shù)據(jù)段被初始化為0

V8 匯編程序的基本結(jié)構(gòu)為:

.seg “text” !定義一個(gè)代碼段

.global data, start, hardreset !定義全局變量

start: !標(biāo)識(shí)程序開(kāi)始,start 要定義為global

set data, %g1

set 3, %g2

add %g2, %g1, %g2

.seg “data”

data:

.word 128

3.1.2 程序設(shè)計(jì)

在應(yīng)用系統(tǒng)的程序設(shè)計(jì)中,若所有的編程任務(wù)均用匯編語(yǔ)言來(lái)完成,其工作量是很大的。所以,V8 體系結(jié)構(gòu)支持C 以及與匯編語(yǔ)言的混合編程,在一個(gè)完整的程序設(shè)計(jì)中,除了初始化部分用匯編語(yǔ)言完成以外,其主要的編程任務(wù)一般都用C 完成。匯編語(yǔ)言與C 的混合編程通常有以下幾種方式:

①在C 代碼中嵌入?yún)R編指令

②在匯編程序和C 程序之間進(jìn)行變量的相互訪問(wèn)



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉