出版時間:2010-3 出版社:清華大學(xué)出版社 作者:楊文顯 編 頁數(shù):280
前言
我國計算機程序設(shè)計語言課程的教學(xué),經(jīng)歷了如下兩個階段。在我國計算機教育的早期,計算機語言種類少,學(xué)習(xí)一門語言可以用上許多年,學(xué)好、學(xué)透一門語言,是該課程教學(xué)的主要目標(biāo)。至于程序設(shè)計能力,則有待于在實踐中逐步提高。該教學(xué)體系的特點就是以語言為主線,從這種語言的字、詞、句、章出發(fā),系統(tǒng)地理解該語言的語法、語義規(guī)范,在這個基礎(chǔ)上,再展開程序設(shè)計的教學(xué)。學(xué)完這門課程,學(xué)生可以獲得該程序設(shè)計語言較為系統(tǒng)、完整的知識。但是,由于語言和程序設(shè)計的教學(xué)被人為地割裂開來,學(xué)生的程序設(shè)計能力沒有得到充分的鍛煉,最終的課程目標(biāo)往往不能順利地實現(xiàn)。進(jìn)入20世紀(jì)90年代,新的計算機程序設(shè)計語言不斷推出。人們發(fā)現(xiàn),花大力氣系統(tǒng)學(xué)習(xí)的一種語言,還沒有充分地得到使用,功能更強,使用更方便的新的程序設(shè)計語言又誕生了,人們不得不一次又一次地棄舊從新。有了上次的經(jīng)驗,他們會按照程序設(shè)計的需要,跳躍性地學(xué)習(xí)語言知識,也就是圍繞著怎樣編寫程序這個中心來展開語言的學(xué)習(xí)。新的教學(xué)體系根據(jù)程序設(shè)計由易到難的次序,選擇對應(yīng)的語言元素進(jìn)行教學(xué),不再強調(diào)語言本身的完整性。這種方法可以較快地進(jìn)入程序設(shè)計的主題,目前大多數(shù)程序設(shè)計語言的教學(xué)都采取這種模式。但是,十分遺憾的是,到目前為止,國內(nèi)大多數(shù)匯編語言教材內(nèi)容的組織仍然可以歸屬為上面所敘述的第一種類型。產(chǎn)生這種局面的原因大致有兩個方面。首先是因為匯編語言是一種面向機器的低級語言。較之其他語言,它的語言元素粒度小,一個最簡單的有意義的程序,也需要約20行的代碼,涉及十余種符號指令和偽指令,各知識點之間的關(guān)聯(lián)度較高。想繞過眾多的語言成分,直接進(jìn)入程序設(shè)計主題,教學(xué)組織的難度較大。另一個原因則是因為,早期的處理器相對簡單,指令總量有限,相對完整地介紹匯編語言的語言元素還是能夠做到的。但是,現(xiàn)在的情況發(fā)生了許多的變化。首先,我國的高等教育得到了快速的發(fā)展,在校學(xué)生總量成倍地增加,高等教育從精英教育向大眾教育變遷。加上匯編語言自身的一些特點,使得以語言為中心展開教學(xué)的難度越來越大,學(xué)生普遍感到匯編語言程序設(shè)計難學(xué),難掌握。
內(nèi)容概要
本書以80×86指令系統(tǒng)和Borland公司TASM 5.X軟件為主要背景,系統(tǒng)介紹了匯編語言程序設(shè)計的基本概念和方法。內(nèi)容包括匯編語言程序設(shè)計基礎(chǔ)、存儲器數(shù)據(jù)定義與傳送、數(shù)據(jù)運算和輸入輸出、選擇與循環(huán),子程序,字符串和文件處理,顯示程序設(shè)計以及輸入輸出與中斷。 作者在長期的教學(xué)和科研實踐中,以親身積累的教學(xué)經(jīng)驗為基礎(chǔ),借鑒了國外許多優(yōu)秀教材,探索出“以程序設(shè)計為中心”,而不是“以語言為中心”展開本課程教學(xué)的方法,取得了顯著的成效。本書正是在多年積累的基礎(chǔ)上,精心編寫而成。讀者學(xué)完本書前兩章,就可以編寫完整的匯編語言程序。此后,學(xué)習(xí)新知識的過程,就是不斷地進(jìn)行程序設(shè)計訓(xùn)練的過程,在多次“螺旋式”上升的過程中,牢牢地掌握匯編語言程序設(shè)計的基本方法。 本書是為計算機及相關(guān)專業(yè)本、??频摹皡R編語言程序設(shè)計”課程而編寫的,它也特別適合于用作計算機工作者學(xué)習(xí)匯編語言程序設(shè)計的自學(xué)教材。
書籍目錄
第1章 匯編語言基礎(chǔ) 1.1 計算機內(nèi)數(shù)據(jù)的表示 1.1.1 進(jìn)位計數(shù)制 1.1.2 數(shù)據(jù)組織 1.1.3 無符號數(shù)的表示 1.1.4 有符號數(shù)的表示 1.1.5 字符編碼 1.1.6 BCD碼 1.2 計算機組織 1.2.1 計算機組成 1.2.2 中央處理器 1.2.3 存儲器 1.2.4 總線 1.2.5 外部設(shè)備和接口 1.3 指令、程序和程序設(shè)計語言 1.3.1 指令和程序 1.3.2 機器語言和匯編語言 1.3.3 高級語言 1.4 80x86寄存器 1.4.1 數(shù)據(jù)寄存器 1.4.2 地址寄存器 1.4.3 段寄存器 1.4.4 專用寄存器 1.4.5 其他寄存器 1.5 80x86 CPU的工作模式 1.5.1 實地址模式 1.5.2 保護(hù)模式 1.5.3虛擬8086模式 習(xí)題一第2章 數(shù)據(jù)定義與傳送 2.1 數(shù)據(jù)的定義 2.1.1 數(shù)據(jù)段 2.1.2 數(shù)據(jù)定義 2.2 數(shù)據(jù)的傳送 2.2.1 指令格式 2.2.2 程序段 2.2.3 基本傳送指令 2.2.4 其他傳送指令 2.2.5 堆棧 2.2.6 操作數(shù)表達(dá)式 2.3 E編語言上機操作 2.3.1 編輯 2.3.2 匯編 2.3.3 連接 2.3.4 運行和調(diào)試 習(xí)題二第3章 數(shù)據(jù)運算與輸入輸出 3.1 算術(shù)運算 3.1.1 加法指令 3.1.2 減法指令 3.1.3 乘法和除法指令 3.1.4 表達(dá)式計算 3.2 循環(huán) 3.2.1 基本循環(huán)指令 3.2.2 程序的循環(huán) 3.2.3 數(shù)據(jù)的累加 3.2.4 多項式計算 3.3 十進(jìn)制數(shù)運算 3.3.1 壓縮BCD數(shù)運算 3.3.2 非壓縮BCD數(shù)運算 3.4 邏輯運算 3.5 控制臺輸入輸出……第4章 選擇和循環(huán)第5章 子程序 第6章 字符串與文件處理第7章 顯示程序設(shè)計第8章 輸入輸出與中斷附錄參考文獻(xiàn)
章節(jié)摘錄
插圖:1.數(shù)據(jù)端口數(shù)據(jù)端口傳遞數(shù)據(jù)信號。數(shù)據(jù)端口的傳送方向可以是輸入,也可以是輸出。對于輸出設(shè)備接口,數(shù)據(jù)首先從CPU寫入接口內(nèi)的數(shù)據(jù)端口,然后由端口傳送到輸出設(shè)備。對于輸入設(shè)備接口,數(shù)據(jù)首先從輸入設(shè)備送人接口內(nèi)的數(shù)據(jù)端口,再由端口送入CPU。2.控制端口控制端口傳遞CPU對外部設(shè)備的控制信號。該信號首先由CPU發(fā)出,傳遞到接口內(nèi)的控制端口,然后發(fā)送到外部設(shè)備??刂菩盘柨梢允且唤M直接的命令,如用1位二進(jìn)制控制外設(shè)的某個電動機啟動/停止,或者某個閥門的打開/關(guān)閉,也可以是一個組合的命令,例如用3位二進(jìn)制發(fā)出8種類型的操作命令,通過電路翻譯成8個獨立的命令信號送外部設(shè)備。控制端口的傳送方向總是輸出的。 ’3.狀態(tài)端口外部設(shè)備與主機的工作具有異步的特點。任何時間都可以去訪問一個存儲單元并獲得數(shù)據(jù),但卻不能在任一時刻從鍵盤獲得數(shù)據(jù)。必須確定鍵盤已經(jīng)輸入了一項數(shù)據(jù),并且尚未被取走,才能通過讀操作獲得該數(shù)據(jù)。狀態(tài)端口從外部設(shè)備那里得到狀態(tài)信號,CPU需要了解這個外部設(shè)備的狀態(tài)時,可以通過讀狀態(tài)端口,得到外部設(shè)備的狀態(tài),從而確定下一步的操作。狀態(tài)端口的傳輸方向總是輸入的。狀態(tài)信號的數(shù)量和表達(dá)的含義隨設(shè)備而變。輸入設(shè)備通常用1bit信號表示Ready。該位=0,表示該設(shè)備尚未輸入,或者,雖然曾經(jīng)輸入,但已經(jīng)被取走,沒有數(shù)據(jù)可供讀取。
編輯推薦
《新編匯編語言程序設(shè)計》:普通高等教育“十一五”國家級規(guī)劃教材,上海市教育委員會高等學(xué)校重點課程建設(shè)教材,高等院校計算機應(yīng)用技術(shù)規(guī)劃教材,實用技術(shù)教材系列
圖書封面
評論、評分、閱讀與下載