版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、上海理工大學光電信息與計算機工程學院計算機組成實驗報告專業(yè)計算機科學與技術姓名陳曉陽學號1512480225年級2015級指導教師鄔春學成 績:教師簽字:目錄實驗一 匯編實驗一4實驗二 匯編實驗二7實驗三 匯編實驗三12實驗一 匯編實驗一一、實驗目的1)掌握匯編的基本語法二、實驗環(huán)境microsoftwindows7masmv2.2三、實驗內容編程計算表達式 x=a x b + c - d/(e+f)其中x、a、b、c、d、e、f均為雙字節(jié)整數。地址分別為x、a1、b1、c1、d1、e1、f1四、實驗代碼及截圖1)data segment ;input data segment code he
2、re a1 db 2 b1 db 1 c1 db 3 d1 db 4 e1 db 1 f1 db 4 x1 db ?data endsstack segment ;input stack segment code herestack endscode segment assume cs:code,ds:data,ss:stackstart: mov ax,data mov ds,ax ;input code segment code here mov al,a1 mul bl add al,c1 sub al,d1 mov bl,e1 add bl,f1 div bl mov x1,al mo
3、v ah,4ch int 21hcode endsend start1)實驗二 匯編實驗二一、 實驗目的學習間接尋址、數組和轉移指令的用法二、實驗環(huán)境microsoftwindows7masmv2.2三、實驗內容1)一個由3個元素組成的整數數組,已經存放在主存的連續(xù)存儲單元中,數組的起始地址為as。設as10h,20h,30h。編程實現:將數組as中的元素向右循環(huán)移動一個位置,例如移位后變成30h,10h,20h。編程實現:將as中最大元素和最小元素分別存于max和min中。2)將字符串source中的內容復制到target中,并顯示輸出。四、實驗代碼及截圖1)data segment as
4、dw 10h,20h,30h ;input data segment code here max dw 0 min dw 0;數據初始data endsstack segment ;input stack segment code herestack endscode segment assume cs:code,ds:data,ss:stackstart:mov ax,data mov ds,ax;將data給ds mov cx,0;cx賦初始值0 mov si,offset as;將data偏移地址存到simov ax,si;data內容給ax add si,2;si加2 li:mov b
5、x,si mov si,ax mov ax,bx add si,2 add cx,1 cmp cx,2 jnz li sub si,6 mov si,ax;將30移位到第一位 mov ax,si mov min,ax mov max,ax;初始化min,max add si,2 mov bx,si cmp bx,ax jl l1;bx<ax執(zhí)行l(wèi)1,此時bx=10,ax=30,執(zhí)行l(wèi)1 mov max,bx;如果bx>=ax,把bx值存入max add si,2;si后移一個數據 mov dx,si cmp bx,dx jg l4 mov max,dx;如果bx>dx則執(zhí)行l(wèi)
6、4,否則將dx存入max l1:add si,2 mov bx,si cmp bx,ax jl l2;bx<ax則執(zhí)行l(wèi)2否則將bx值存入max mov max,bx l4:cmp ax,dx jg l5 l5:mov min,dx ;將dx存入min l2:mov bx,si sub si,2 mov ax,si cmp bx,ax jg l3;bx大于ax則跳轉l3,否則將bx存入min mov min,bxl3:mov min,ax;此時ax為10,將其存入minmov ah,4ch int 21hcode endsend start2)data segment source db
7、 'hello world$'data endsdata1 segmenttarget db 30 dup(?)data1 endsstack segment ;input stack segment code herestack endscode segment assume cs:code,ds:data,ss:stackstart:mov ax,datamov ds,ax;data存入dsmov ax,data1mov es,ax;data1存入eslea si,source;source地址存到silea di,target;target地址存到dimov cx,2st
8、d;df=1rep movsb;將si中字符串復制到di中l(wèi)ea dx,targetmov ah,9int 21h;輸出復制得到的字符串mov ah,4chint 21hcode endsend start1)2)實驗三 匯編實驗三一、實驗目的1)學習邏輯運算指令和移位指令的用法二、實驗環(huán)境microsoftwindows7masmv2.2三、實驗內容1)將一個指定字符串進行異或加密,每個單字符的密鑰(0-255)保存在數組key中。程序運行過程:顯示明文,顯示所產生的密文,顯示解密后的明文。例如key = 125,248,16,8,262)將一個指定字符串進行循環(huán)移位加密。每個單字符的密鑰(
9、-77)保存在數組key中。程序運行過程:顯示明文,顯示所產生的密文,顯示解密后的明文.例如key = -2,2,1,0,-1,其中負數表示循環(huán)左移,正數表示循環(huán)右移,0不變,數字表示移動的位數四、實驗代碼及截圖1)data segmentstring db 'hello$'明文key db 125,248,16,8,26;密鑰msg1 db ' ming wen:$'msg2 db ' mi wen:$'data endsstack segment ;input stack segment code herestack endscode seg
10、ment assume cs:code,ds:data,ss:stackstart: mov ax,data mov ds,ax lea dx,msg1 mov ah,09h int 21h lea dx,string mov ah,09h int 21h;輸出加密前明文 mov cx,5 loop1:mov bx,cx mov al,stringbx-1 xor al,keybx-1 mov stringbx-1,al loop loop1;明文加密 lea dx,msg2 mov ah,09h int 21h lea dx,string mov ah,09h int 21h;輸出加密后的密
11、文 mov cx,5 loop2:mov bx,cx mov al,stringbx-1 xor al,keybx-1 mov stringbx-1,al loop loop2;解密密文 lea dx,msg1 mov ah,09h int 21h lea dx,string mov ah,09h int 21h;輸出解密的明文 mov ah,4ch int 21hcode endsend start2)data segmentstring db 'hello$'待加密明文key db -2,2,1,0,-1;密鑰msg1 db ' ming wen:$'msg
12、2 db ' mi wen:$'data endsstack segment ;input stack segment code herestack endscode segment assume cs:code,ds:data,ss:stackstart: mov ax,data mov ds,ax lea dx,msg1 mov ah,09h int 21h lea dx,string mov ah,09h int 21h;輸出加密前的明文 mov cx,5 mov al,0 loop1:mov bx,cx push cx;對cx壓棧 mov cl,keybx-1 cmp
13、cl,al jl t1;若密鑰小于0則跳轉到tl rol stringbx-1,cl;密鑰不小于0則左循環(huán)移位 jmp s1;跳至sl t1:neg cl;若密鑰小于0,則取補,變?yōu)檎龜颠M行操作 ror stringbx-1,cl;右循環(huán)移位 s1:pop cx;彈棧 loop loop1 lea dx,msg2 mov ah,09h int 21h lea dx,string mov ah,09h int 21h;輸出加密后的密文 mov cx,5 mov al,0 loop2:mov bx,cx push cx;壓棧 mov cl,keybx-1 cmp cl,al;比較密鑰與0的大小 jg t2;若密鑰大于0則執(zhí)行t2 neg cl;密鑰不大于0則對cl取補
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)勞動合同范本簡易版
- 2025建筑物資租賃合同(大連安建)
- 2025拆遷合作合同范本
- 課題申報參考:考慮多減排項目并行的港口作業(yè)設備綠色轉型路徑設計與激勵機制研究
- 教育中的數字化互動與智能學習
- 心理健康課程在學生教育中的實施效果評估
- 2024年中尺度自動氣象站系統項目項目投資申請報告代可行性研究報告
- 追溯系統在農產品質量監(jiān)管中的重要作用
- 二零二五年度金融科技產品開發(fā)與應用合同范本4篇
- 2025年浙科版七年級科學上冊階段測試試卷
- 2025河北邯鄲世紀建設投資集團招聘專業(yè)技術人才30人高頻重點提升(共500題)附帶答案詳解
- 慈溪高一期末數學試卷
- 天津市武清區(qū)2024-2025學年八年級(上)期末物理試卷(含解析)
- 《徐霞客傳正版》課件
- 江西硅博化工有限公司年產5000噸硅樹脂項目環(huán)境影響評價
- 高端民用航空復材智能制造交付中心項目環(huán)評資料環(huán)境影響
- 貴州省黔東南州2024年七年級上學期數學期末考試試卷【附答案】
- 量子醫(yī)學成像學行業(yè)研究報告
- DB22T 3268-2021 糧食收儲企業(yè)安全生產標準化評定規(guī)范
- 辦事居間協議合同范例
- 正念減壓療法詳解課件
評論
0/150
提交評論