實驗 5 編寫、調試具有多個段的

實驗任務

(1)

(2)

(3)

(4)

?若將最后一條指令”end start“改為”end“,(3)中的程序仍然可以正常執行。

原因:如果不指明程序的入口,程序的cs:ip值沒有被設置為指向該入口,就會以程序段的第一條指令為默認入口了,然后程序會在end處結束,無法運行到代碼段。

(5)

①實驗代碼

assume cs:code
a segment
? db 1,2,3,4,5,6,7,8
a ends
b segment
? db 1,2,3,4,5,6,7,8
b ends
c1 segment?? ; 在集成軟件環境中,請將此處的段名稱由c→改為c1或其它名稱
? db 8 dup(0)
c1 ends???? ; 改的時候要成對一起修改
code segment
start:
mov ax,c1
mov es,ax
mov bx,0
mov cx,8
s:?
mov ax,a
mov ds,ax
mov dl,[bx]
mov es:[bx],dl
mov ax,b
mov ds,ax
mov dl,[bx]
add es:[bx],dl
inc bx
loop s
mov ax,4c00h
int 21h
code ends
end start

②在實現數據相加前,邏輯段c的8個字節

?

③ 執行完實現加運算的代碼后,邏輯段c的8個字節

④驗證是否完成正確的數據相加

c1中數據符合a的數據與b的數據加和。

(6)

①程序代碼

assume cs:code
a segment
? dw 1,2,3,4,5,6,7,8,9,0ah,0bh,0ch,0dh,0eh,0fh,0ffh
a ends
b segment
? dw 8 dup(0)
b ends
code segment
start:
mov ax,a
mov ds,ax
mov ax,b
mov ss,ax
mov cx,8h
mov bx,0
mov sp,10h
s:
push[bx]
add bx,2
loop s
mov ax,4c00h
int 21h
code ends
end start
②查看邏輯段b的8個字單元信息截圖

?

③執行 push操作,然后再次查看邏輯段b的8個子單元信息

?④:對比②和③

經驗證,已成功實現逆序存儲。
總結與體會
通過本次實驗,我掌握了如何來編寫、調試具有多個段的一個程序,
具有多個段的程序相對于僅具有一個段的程序而言,能把數據,代碼和棧段分開存儲,不僅提高了程序整體的存儲容量,還使程序顯得井然有條,通過對多個段的定義,使我們對數據的操作更方便清晰了。?
大致清楚了為具有多個段的一個程序分配儲存空間的方式,以16個字節為倍數,將其連續地分配在一個儲存空間中。

轉載于:https://www.cnblogs.com/xihongqing/p/10017194.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/537429.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/537429.shtml
英文地址,請注明出處:http://en.pswp.cn/news/537429.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

hbuilderx的快捷鍵整理pdf_mac鍵盤快捷鍵詳解,蘋果電腦鍵盤快捷鍵圖文教程

作為 Apple 最成熟的系統之一,macOS 已經成為許多人每天都在接觸的生產力工具。為了幫助大家更好地了解 macOS 的生態魅力,我們整理了這份融合了文字圖片和動圖的mac鍵盤快捷鍵詳解,希望能夠幫助你掌握更多系統使用技巧。文章所有操作都基于 …

word插入圖片顯示不全

word插入圖片,顯示不全,只有部分。 調整步驟 圖片尾部 光標定位到圖片的尾部 單倍行距 右鍵,選擇“段落”,行間距選擇“單倍行距” 圖片就完成顯示了

理解 JavaScript 作用域

上一篇文章中分析了 JS 中的數據類型和變量。這一篇文章將分析作用域,以及回答上一篇文章中變量提升的原因。 什么是作用域 作用域是一套規則,保存著變量,等待被引擎所查找。 var a 1; console.log(a); // > 1 console.log(b); // >…

mysql行求和

SELECT 列1 列2 列3 …… 列N AS Total FROM 表 SELECT sum(列1 列2 列3 …… 列N) AS Total FROM 表 轉載于:https://www.cnblogs.com/weilovehua/p/10024624.html

python安裝后在哪里找_python安裝后的目錄在哪里

從官網下載python的安裝包,安裝過程中可選擇裝在C盤或D盤或者其他的磁盤。 如果忘記了安裝在哪里,可以在命令行中使用以下命令 where python 會顯示python的絕對路徑 C:\Users\Administrator>where python C:\Users\Administrator\AppData\Local\Prog…

Axure原型設計導出到PDF文件

Axure 沒有直接導出PDF文件的功能,可以通過Axure 的打印功能,選擇PDF打印機,以間接的方式將原型設計導出到pdf文件里。 操作步驟 以Axure9為例 打印 Axure9---文件---打印 不要母版 預覽 預覽下效果,看下是否有不必要的內容 …

izoak028

離散數學 (自考) 【自考】計算機網絡原理精講(2018版)轉載于:https://www.cnblogs.com/qianyindichang2/p/10025538.html

Word查找替換詳細用法及通配符一覽表

使用通配符 要查找“?”或者“*”&#xff0c;可輸入“\?”和“\*”&#xff0c;\1\2\3依次匹配數對括號內容 查找(a)12(b) 替換\2XY\1 結果&#xff1a;bXYa ([.0-9]) [MG]B 匹配文件大小&#xff0c; 例1: 201 MB ,例2: 2.51 GB <(e*r)> 匹配“…

python pca降維_機器學習的降維打擊

文章發布于公號【數智物語】 (ID&#xff1a;decision_engine)&#xff0c;關注公號不錯過每一篇干貨。來源 | SAMshare(id:SAMshare)作者 | samshare"本次主要講解的內容就是特征降維&#xff0c;主要涉及PCA以及一些常見分析方法。"01Index一&#xff0c;PCA降維算…

什么樣的項目是成功的?

項目成功的標準是什么&#xff1f; 項目范圍控制住&#xff0c;成本沒超標&#xff0c;質量達標&#xff0c;進度按計劃&#xff0c;順利驗收。做到這些就是項目成功了嗎&#xff1f; 答案顯然是不一定&#xff01;&#xff01;! 有多少項目的成本、進度、目標都能夠嚴格按照…

ng-notadd 0.10.1,基于 Angular7 和 material2 的中后臺解決方案

更新內容修復 scss左側導航欄美化修復導航欄 2px 間隔問題技術棧TypescriptAngularMaterial2rxjsGraphql相關鏈接項目地址DEMOng-notadd-mock-serverQuick startgit clone https://github.com/notadd/ng-notadd.gitcd ng-notaddnpm installnpm start# or use ng cling serve復制…

python需要什么包裝_python學習之包裝與授權

實現授權的關鍵點就是覆蓋__getattr__()方法&#xff0c;在代碼中包含一個對getattr()內建函數的調用。 特別調用getattr()以得到默認對象屬性&#xff08;數據屬性或者方法&#xff09;并返回它以便訪問或調用。 特殊方法__getattr__()的工作方式是&#xff0c;當搜索一個屬性…

參加技術培訓前的輔導,選得對,學得好

最近幾年&#xff0c;每年都會有人問我培訓班的事情&#xff0c;我也有培訓班經歷&#xff0c;在軟件行業工作了十多年&#xff0c;每次解答培訓班的咨詢我都很認真&#xff0c;也很高興能幫到他人。 決定通過專欄的形式解答培訓班常見問題&#xff0c;我把專欄取名“技術培訓…

[算法]淺談求n范圍以內的質數(素數)

汗顏&#xff0c;數學符號表達今天才學會呀-_-# 下面是百度百科對質數的定義 質數&#xff08;prime number&#xff09;又稱素數&#xff0c;有無限個。質數定義為在大于1的自然數中&#xff0c;除了1和它本身以外不再有其他因數。求質數的方法自然不少&#xff0c;但主要還是…

進入IT行業,要不要參加培訓班?

IT行業介紹 考慮培訓班無非是要入行,那IT行業好不好?IT行業當然好,看看培訓班的數量就知道了。現在房產行業好賺錢,每個小區門口好幾家中介門店,相同品牌的可能不止1家。不用去看網上的軟文,也不用去問百度,看市場的反應,這是真實的反饋。培訓班越來越多,課程越來越多…

python commands_Windows環境下使用python的commands.getstatusoutput

windows調用系統或其他腳本的&#xff0c;常用的是os.popen&#xff0c;次命令本身并不返回執行后的狀態&#xff0c;無法用于后續的判斷&#xff0c;故嘗試Unix下的commands.getstatusoutput&#xff0c;發現在windows下并不能正常使用&#xff0c;如下&#xff1a; >>&…

Kubernetes在上汽集團云平臺及AI方面的應用

2019獨角獸企業重金招聘Python工程師標準>>> 帆一尚行成立于2015年&#xff0c;是上汽集團的全資子公司&#xff0c;建設有上海、南京、鄭州&#xff08;在建&#xff09;三個數據中心&#xff0c;擁有超過4000臺物理服務器&#xff0c;10PB的數據存儲&#xff0c;總…

我的Java培訓經歷

此文講述我的Java開發培訓經歷&#xff0c;來解答關心的培訓費、培訓節奏、就業等問題。 我在2010年參加達內Java培訓&#xff0c;如今再回首那段時光&#xff0c;雖然辛苦&#xff0c;但很值得&#xff01;&#xff08;后悔參加培訓班&#xff0c;大部分原因是沖動&#xff0…

python跨函數調用變量_對python中不同模塊(函數、類、變量)的調用詳解

首先&#xff0c;先介紹兩種引入模塊的方法。 法一&#xff1a;將整個文件引入 import 文件名 文件名.函數名( ) / 文件名.類名 通過這個方法可以運行另外一個文件里的函數 法二&#xff1a;只引入某個文件中一個類/函數/變量 需要從某個文件中引入多個函數或變量時&#xff0c…

軟件培訓技術選哪個?

要培訓了,培訓技術怎么選? 技術需慎重選 女怕嫁錯郎,男怕入錯行。后悔參加培訓班,因為技術沒選好的占比很高。 技術沒選好會有什么影響? 近的影響是就業!遠的影響是發展! 對于程序員來說,技術就是立身之本,需要慎重選擇! 我在《要不要參加培訓班?》文章中介紹…