1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

    <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
    <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
  2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
    現在位置:范文先生網>理工論文>計算機論文>淺析語言中尋址方式的區別

    淺析語言中尋址方式的區別

    時間:2023-02-11 10:13:14 計算機論文 我要投稿
    • 相關推薦

    淺析匯編語言中尋址方式的區別

      淺析匯編語言中尋址方式的區別  
      王傳俊
      【摘要】尋址方式是匯編語言中的一個重要內容,是學習編程的基礎,同時也是該門課程的一個學習難點。本文通過以Inte18086CPU為例,使用分析比較的方法闡述了各尋址方式間的區別。
      【關鍵詞】匯編語言 尋址方式 有效地址 物理地址
      在計算機應用技術的發展過程中,匯編語言是一座連接軟件和硬件的橋梁,也是計算機能夠提供給用戶最快而又最有效的語言。
      匯編語言不同于用O,1數字表示的機器語言,它是用人們熟悉的英文縮寫字符表示相應的操作碼,用符號或數值表示地址和操作數。因此,匯編語言為程序的編寫、閱讀和修改提供了方便。但由于匯編語言仍是一種面向機器的語言,所以在進行程序設計時必須考慮到機器的指令系統、尋址方式及存儲設備的設置和功能,而熟悉并靈活地應用機器所采用的各種尋址方式,是運用匯編語言進行程序設計的根本。而一個指令系統具有哪幾種尋址方式,是否為編寫程序提供方便,是指令系統設計的關鍵,同時也是初學者學習匯編語言的難點。
      在教學過程中,通常選用Inte18086CPU的PC機為基礎機型來組織教學。Inte18086提供了九類尋址方式,它們分別是立即尋址、寄存器尋址、寄存器間接尋址、直接尋址、變址尋址、基址變址尋址、串尋址、端口尋址和隱含尋址。
      由于Inte18086中的尋址方式有相似之處,極易混淆。在教學過程中,應使學生抓住各種尋址方式的特點,找出它們之間的區別和聯系,從而形成正確的概念。
      什么是尋址方式呢?這是首先要明確的概念。一個指令是由操作碼和操作數兩部分組成的。操作數在存儲器中存放的位置,稱為操作數地址。獲得操作數地址的方式,就稱為操作數地址的尋址方式,簡稱尋址方式。
      在尋址過程中,操作數的存放位置決定著尋址的方式。在匯編語言的學習過程中,區分“存放位置”是理解尋址方式的前提。因此,在學習之前應使學生理解寄存器和存儲器的不同。
      寄存器位于CPU內部,它的存取速度比存儲器要快得多。在計算機的運算過程中寄存器主要用來存放運算過程中的各種信息,包括操作數地址,操作數和運算的中間結果。
      存儲器是由許多存儲單元組成的,每個單元有唯一確定的地址。它是計算機的記憶場所,能把計算和處理的數據及程序存入計算機,使計算機自主工作,免受其它因素的干擾。
      在指令中,辨別操作數是存放在寄存器還是存儲器中最簡單的方法就是看這個操作數的書寫有無[]。如果有[],則操作數一定是存儲器操作數,即操作數存放在存儲器中,而存儲器操作數所在的存儲器地址就是該操作數的物理地址。若無[],則操作數的存放分兩種情況:一是在指令中操作數以立即數的形式給出,如3500H,則該操作數的尋址方式為立即尋址方式;二是操作數以通用寄存器形式給出,如AX,則該操作數的尋址方式為寄存器尋址方式。
      立即尋址和寄存器尋址的相同之處在于都不需要訪問內存,工作效率高。但立即尋址方式主要用來為存儲單元或寄存器賦初值,如:MOVAX,2043H這條指令中的源操作數2043H以立即數形式給出,與操作碼一起放在代碼段區域中。而寄存器尋址方式的操作數放在一個通用寄存器中,即AX、BX、cx、DX、BP、sP、SI、DI中的任意一個。如:MAXAX,cx這條指令中的源操作數存放在cx中。
      直接尋址方式和前兩種尋址方式的區別是:操作數存放在存儲器中,16位有效地址直接包含在指令中。它的物理地址是由指令中直接給出的16位有效地址與數據段寄存器DS向高位移動4位后相加得到的。如:MOVAX,[2000H]中源操作數的16位有效地址2000H直接出現在指令中,它的物理地址=DS*10H+2000H。
      寄存器間接尋址、變址尋址、基址變址尋址這三種尋址方式的操作數都存放在內存儲器中,而要訪問內存中存放操作數的存儲單元,就需要知道存儲單元在內存儲器中的有效地址。在Inte18086中,用來存放有效地址的寄存器只有四個,分別是DI、SI、BP和BX,即在指令中只有這四個寄存器可以放在[]中,作為尋址寄存器。四種尋址方式的有效地址就是通過這四個寄存器以不同尋址方式而得到的。
      寄存器間接尋址方式的操作數的有效地址只能由四個寄存器中的一個存放。以DI、SI或BX間接尋址時,操作數隱含在存儲器的數據段區域中,操作數的地址用數據段寄存器DS內容左移4位加上DI、SI或BX中的16位有效地址獲得。如:MOVAX,[BX]中源操作數的有效地址為BX內容,它的物理地址=DS*10H+(BX)。以BP間接尋址時操作數隱含在存儲器的對棧段區域中,操作數的地址用堆棧段寄存器ss內容左移4位加上BP中的16位有效地址獲得。若指令中標明是段超越的,則操作數的地址用段前綴寄存器內容左移4位加上BP中的16位有效地址獲得。
      變址尋址方式的操作數有效地址由變址寄存器(DI、SI、BP、BX)內容和指令中給定的8位或16位位移量組成。與寄存器間接尋址方式相比多了位移量。如:MOVAX,disp[DI]中有效地址為disp+(DI),物理地址=DS*lOH+disp+(DI)。在基址變址尋址方式中,將SI或DI稱為變址寄存器,將BP或BX稱為基址寄存器,在使用時只能同時使用一個變址寄存器和一個基址寄存器。該尋址方式中的操作數有效地址=(SI)+(BX)。如:MOVAX,[SI][BX],物理地址=DS*10H+(SI)+(BX)。
      在以上六種尋址方式中,物理地址只與存放在內存儲器中的操作數有關,而這種操作數在指令格式中最大的特點就是帶有[],而其它操作數的存取都與內存無關,因而也就不涉及物理地址。
      串尋址方式用于字符串的操作,使用隱含的變址寄存器SI和DI尋址。源串操作數用SI尋址,目的串操作數用DI尋址,在指令執行過程中根據標志寄存器的DF標志位,自動修改SI和DI內容,以給定指向下一個操作數的地址,完成各種對字符串的操作。串尋址方式的特征主要表現在操作碼上,通常串尋址方式的操作碼是一般操作碼后加S(string字符串的縮寫),以區別與其它尋址方式的不同。如:MOV實現傳送指令,MOVSB則實現字符串的字節傳送。
      端口尋址方式用于CPU尋址外設端口。并由8位或16位(存放在寄存器DX中)立即數構成端口地址。該尋址方式只有兩個操作碼:OUT(輸出)和IN(輸入)。需要注意的是輸出指由CPU輸出至端口地址,輸入則指端口地址輸入到CPU中。隱含尋址方式是指在Inte18086中,有些指令沒有給出操作數,但卻隱含著對固定寄存器的操作。如:AAA隱含對AL操作,LES隱含對ES操作。
      這三種是具有特殊功能的尋址方式,理解了其各自的操作對象及操作碼的特征,那么掌握起來就很容易了。
      通過對這幾種尋址方式的分析比較,將抽象且較難理解的尋址方式具體化、形象化,這對今后的指令系統和程序設計學習會有很大的幫助。
      【參考文獻】
      1蘇春莉:微機原理課程教學的實踐與探討[J],電腦知識與技術,2009,(24)
      2陳佳:尋址方式教學方法的研究與研討[J],科技技術,2009,(16)
      3郭旭平:匯編語言尋址方式[J],機械管理開發,2008,(17)
      【組稿編輯:包桂英】
      (作者單位:265500山東省煙臺市煙臺汽車工程職業學院)

    【淺析語言中尋址方式的區別】相關文章:

    淺析雇傭與承攬的區別08-05

    淺析音樂教學德育方式研究08-24

    工傷與雇傭損害賠償區別之淺析08-05

    工傷與雇傭損害賠償區別之淺析08-05

    淺析企業新的管理方式 知識管理05-07

    淺析企業新的管理方式 知識管理05-07

    淺析處理征地糾紛的法律方式及相關事項08-05

    淺析企業新的管理方式——知識管理08-07

    淺析高中化學教學實效性的提高方式08-24

    国产福利萌白酱精品tv一区_日韩亚洲中字无码一区二区三区_亚洲欧洲高清无码在线_全黄无码免费一级毛片
    1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

      <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
      <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
    2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
      亚洲国产日韩综合久久精品 | 日韩欧美一区二区三区永久免费 | 在线观看午夜福利片日本 | 亚洲国产99在线精品一区欲臀 | 久久香蕉亚洲视频 | 中文字幕亚洲欧美在线不卡 |