![匯編實(shí)驗(yàn)完整_第1頁](http://file4.renrendoc.com/view11/M02/3F/11/wKhkGWV6hu-Aff_EAAFYzSZK8So474.jpg)
![匯編實(shí)驗(yàn)完整_第2頁](http://file4.renrendoc.com/view11/M02/3F/11/wKhkGWV6hu-Aff_EAAFYzSZK8So4742.jpg)
![匯編實(shí)驗(yàn)完整_第3頁](http://file4.renrendoc.com/view11/M02/3F/11/wKhkGWV6hu-Aff_EAAFYzSZK8So4743.jpg)
![匯編實(shí)驗(yàn)完整_第4頁](http://file4.renrendoc.com/view11/M02/3F/11/wKhkGWV6hu-Aff_EAAFYzSZK8So4744.jpg)
![匯編實(shí)驗(yàn)完整_第5頁](http://file4.renrendoc.com/view11/M02/3F/11/wKhkGWV6hu-Aff_EAAFYzSZK8So4745.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
實(shí)驗(yàn)一二進(jìn)制加、減法編程實(shí)驗(yàn)(設(shè)計(jì)性實(shí)驗(yàn))一、實(shí)驗(yàn)要求和目的 1.熟悉匯編語言二進(jìn)制多字節(jié)加法基本指令的使用方法; 2.熟悉匯編語言二進(jìn)制多字節(jié)減法基本指令的使用方法; 3.掌握匯編語言編程的一般結(jié)構(gòu)。四、實(shí)驗(yàn)內(nèi)容與步驟1、實(shí)驗(yàn)內(nèi)容(1)編寫程序,實(shí)現(xiàn)長(zhǎng)度為2字的兩個(gè)多精度數(shù)相減。(2)編寫程序,實(shí)現(xiàn)一個(gè)長(zhǎng)度為3字的多精度數(shù)和一個(gè)長(zhǎng)度為2字的多精度數(shù)相加減。2、實(shí)驗(yàn)步驟(1)預(yù)習(xí)多精度數(shù)加減法基本知識(shí),根據(jù)實(shí)驗(yàn)內(nèi)容,畫出流程圖;(2)利用EDIT或其他編輯軟件,編寫匯編源程序,取名為“ch2ex1.ASM”、“ch2ex2.ASM”。(3)匯編、連接該源程序,產(chǎn)生“ch2ex1.EXE”、“ch2ex2.EXE”文件;(4)對(duì)“ch2ex1.EXE”和“ch2ex2.EXE”文件進(jìn)行調(diào)試運(yùn)行:利用DEBUG的T命令或G命令和D命令查看數(shù)據(jù)區(qū)的加減法結(jié)果是否正確。流程圖結(jié)束結(jié)束開始開始8A135311H->DW95264783H-DW低字相減高字借位相減將結(jié)果存入RESULT實(shí)驗(yàn)程序: DATASEGMENT;數(shù)據(jù)段開始DATA1DW5311H,8A13HDATA2DW4783H,9526HRESULTDW2DUP(?);存放多字減法的結(jié)果DATAENDS;數(shù)據(jù)段結(jié)束CODESEGMENT;代碼段開始ASSUMECS:CODE,DS:DATASTART:MOVAX,DATA;DATA地址存入DSMOVDS,AXMOVAX,DATA1+2;高八位MOVDX,DATA1;低八位SUBDX,DATA2;低字相減SBBAX,DATA2+2;高字借位相減MOVRESULT+2,AX;存結(jié)果MOVRESULT,DXCODEENDS;代碼段結(jié)束ENDSTART實(shí)驗(yàn)流程圖開始開始8Al73117123H->DW95269783H->DW最低位相減,高位借位相減依次將結(jié)果存放結(jié)束:實(shí)驗(yàn)程序:DATASEGMENTDATA1DW7123H,7311H,8A13H;表示數(shù)據(jù)8al73117123hDATA2DW9783H,9526H;表示數(shù)據(jù)95269783hRESULT2DW3DUP(?);存放多字節(jié)減法的結(jié)果DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATA;DATA地址存在DS中MOVDS,AXMOVAX,DATA1;低字MOVDX,DATA1+2;高字MOVDX,DATA1+4MOVAX,DATA1MOVDX,DATA1+2SUBAX,DATA2SBBDX,DATA2+2MOVRESULT2,AXMOVRESULT2+2,DXMOVDX,DATA1+4SBBDX,0MOVRESULT2+4,DXCODEENDSENDSTART實(shí)驗(yàn)二十進(jìn)制數(shù)的BCD加、減法編程實(shí)驗(yàn)一、實(shí)驗(yàn)要求和目的 1.熟悉BCD碼的基本知識(shí)2.熟悉匯編語言BCD碼多字節(jié)加減法基本指令的使用方法; 3.掌握BCD碼調(diào)整指令的使用方法。二﹑實(shí)驗(yàn)內(nèi)容和步驟1﹑實(shí)驗(yàn)內(nèi)容(1)編寫程序,實(shí)現(xiàn)長(zhǎng)度為2字節(jié)的縮與非壓縮的BCD碼相減。(2)編寫程序,實(shí)現(xiàn)一個(gè)長(zhǎng)度為3字節(jié)2字節(jié)的壓縮與非壓縮的BCD碼相減。2﹑實(shí)驗(yàn)步驟(1)預(yù)習(xí)BCD碼相加減的基本知識(shí),根據(jù)實(shí)驗(yàn)內(nèi)容,畫出流程圖;(2)利用EDIT或其他編輯軟件,編寫匯編源程序,取名為“ch2ex3.ASM”、“ch2ex4.ASM”;(3)匯編、連接該源程序,產(chǎn)生“ch2ex3.EXE”、“ch2ex4.EXE”文件;(4)對(duì)“ch2ex3.EXE”和“ch2ex4.EXE”文件進(jìn)行調(diào)試運(yùn)行:利用DEBUG的T命令或G命令和D命令查看數(shù)據(jù)區(qū)的相減結(jié)果是否正確。三、試驗(yàn)流程圖:開始開始?jí)嚎s的BCD碼非壓縮的BCD碼低位相減十進(jìn)制調(diào)整,實(shí)現(xiàn)壓縮BCD碼減法高位借位相減,十進(jìn)制調(diào)整結(jié)束四、試驗(yàn)程序:(1)編寫程序,實(shí)現(xiàn)長(zhǎng)度為2字節(jié)的縮與非壓縮的BCD碼相減。DATASEGMENT;數(shù)據(jù)段BCD1DB34H,18H;壓縮的BCD碼表示十進(jìn)制數(shù)1834BCD2DB89H,27H;壓縮的BCD碼表示十進(jìn)制數(shù)2789RESULT1DB2DUP(?);存放壓縮的BCD碼相減的結(jié)果BCD3DB05H,02H;非壓縮的BCD碼表示十進(jìn)制數(shù)25BCD4DB08H,03H;非壓縮的BCD碼表示十進(jìn)制數(shù)38RESULT2DB2DUP(?);存放非壓縮的BCD碼相減的結(jié)果DATAENDSCODESEGMENT;代碼段開始ASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX;壓縮的BCD碼相減計(jì)算MOVAL,BCD1;低位相減SUBAL,BCD2DAS;十進(jìn)制調(diào)整,實(shí)現(xiàn)壓縮BCD碼減法MOVRESULT1,ALMOVAL,BCD1+1;高位借位相減SBBAL,BCD2+1DASMOVRESULT1+1,AL;非壓縮的BCD碼相減計(jì)算MOVAL,BCD1SUBAL,BCD2AAS;減法的ASCII調(diào)整指令MOVRESULT2,ALMOVAL,BCD1+1SBBAL,BCD2+1AASMOVRESULT2+1,ALCODEENDSENDSTART(2)編寫程序,實(shí)現(xiàn)一個(gè)長(zhǎng)度為3字節(jié)2字節(jié)的壓縮與非壓縮的BCD碼相減。實(shí)驗(yàn)流程圖:開始開始275834->BCD12789->BCD2865->BCD338->BCD4開辟空間存放運(yùn)算結(jié)果壓縮的BCD碼相減計(jì)算非壓縮的BCD碼相減計(jì)算存結(jié)果結(jié)束試驗(yàn)程序:DATASEGMENTBCD1DB34H,58H,27H;壓縮的BCD碼表示十進(jìn)制數(shù)275834BCD2DB89H,27H;壓縮的BCD碼表示十進(jìn)制數(shù)2789RESULT1DB3DUP(?);存放壓縮的BCD碼相加的結(jié)果RESULT2DB3DUP(?);存放壓縮的BCD碼相減的結(jié)果BCD3DB05H,06H,08H;非壓縮的BCD碼表示十進(jìn)制數(shù)65BCD4DB08H,03H;非壓縮的BCD碼表示十進(jìn)制數(shù)38RESULT3DB3DUP(?);存放非壓縮的BCD碼相加的結(jié)果RESULT4DB3DUP(?);存放非壓縮的BCD碼相減的結(jié)果DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX;壓縮的BCD碼相加計(jì)算MOVAL,BCD1ADDAL,BCD2DAAMOVRESULT1,ALMOVAL,BCD1+1ADCAL,BCD2+1DAAMOVRESULT1+1,ALMOVAL,BCD1+2ADCAL,0;最高位產(chǎn)生借位DAAMOVRESULT1+2,AL;壓縮的BCD碼相減計(jì)算MOVAL,BCD1SUBAL,BCD2DASMOVRESULT2,ALMOVAL,BCD1+1SBBAL,BCD2+1DASMOVRESULT2+1,ALMOVAL,BCD1+2SBBAL,0DASMOVRESULT2+2,AL;非壓縮的BCD碼相加計(jì)算MOVAL,BCD3ADDAL,BCD4AAAMOVRESULT3,ALMOVAL,BCD3+1ADCAL,BCD4+1AAAMOVRESULT3+1,ALMOVAL,BCD3+2ADCAL,0AAAMOVRESULT3+2,AL;非壓縮的BCD碼相減計(jì)算MOVAL,BCD3SUBAL,BCD4AASMOVRESULT4,ALMOVAL,BCD3+1SBBAL,BCD4+1AASMOVRESULT4+1,AMOVAL,BCD3+2SBBAL,0AASMOVRESULT4+2,ALCODEENDSENDSTART實(shí)驗(yàn)三二進(jìn)制乘、除法編程實(shí)驗(yàn)(設(shè)計(jì)性實(shí)驗(yàn))一、實(shí)驗(yàn)要求和目的 1.熟悉數(shù)據(jù)的補(bǔ)碼表示。2.熟悉無符號(hào)數(shù)和有符號(hào)數(shù)乘法和除法指令的使用; 3.掌握符號(hào)位擴(kuò)展指令的使用。二、實(shí)驗(yàn)內(nèi)容和步驟1、實(shí)驗(yàn)的內(nèi)容(1)被除數(shù)是一個(gè)3字長(zhǎng)的有符號(hào)數(shù),除數(shù)是一個(gè)1字長(zhǎng)的有符號(hào)數(shù),求兩個(gè)數(shù)相除的商和余數(shù)。(2)求兩個(gè)2字長(zhǎng)的無符號(hào)數(shù)相乘的結(jié)果,并將結(jié)果保存在存儲(chǔ)空間中。2﹑實(shí)驗(yàn)步驟(1)預(yù)習(xí)二進(jìn)制乘﹑除法基本知識(shí),根據(jù)實(shí)驗(yàn)內(nèi)容,畫出流程圖;(2)利用EDIT或其他編輯軟件,編寫匯編源程序,取名為“ch2ex5.ASM”、“ch2ex6.ASM”;(3)匯編、連接該源程序,產(chǎn)生“ch2ex5.EXE”、“ch2ex6.EXE”文件;(4)對(duì)“ch2ex5.EXE”和“ch2ex6.EXE”文件進(jìn)行調(diào)試運(yùn)行:利用DEBUG的T命令或G命令和D命令查看數(shù)據(jù)區(qū)的乘除法結(jié)果是否正確。四、實(shí)驗(yàn)程序:(1)被除數(shù)是一個(gè)3字長(zhǎng)的有符號(hào)數(shù),除數(shù)是一個(gè)1字長(zhǎng)的有符號(hào)數(shù),求兩個(gè)數(shù)相除的商和余數(shù)。開始開始8A1153H->IDIVISOR47H->IDIVISORQUOTIENTDB3DUP(0);存放除法結(jié)果的商REMAINDERDB0;存放除法結(jié)果的余數(shù)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA開辟空間存放運(yùn)算結(jié)果AL<-AX/IDIVISOR的商AH<-AX/IDIVISOR的余數(shù)數(shù)據(jù)段地址存入DS商存放在QUOTIENT中余數(shù)存放在REMAINDER中結(jié)束DATASEGMENTIDIVIDENDDB53H,11H,8AH;表示數(shù)據(jù)8A1153HIDIVISORDB47HQUOTIENTDB3DUP(0);存放除法結(jié)果的商REMAINDERDB0;存放除法結(jié)果的余數(shù)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATA;將DATA地址存入DSMOVDS,AXMOVAL,IDIVIDEND+2;除數(shù)最高位CBW;字節(jié)轉(zhuǎn)換為字指令I(lǐng)DIVIDIVISOR;帶符號(hào)數(shù)除法指令A(yù)L<-AX/IDIVISOR的商AH<-AX/IDIVISOR的余數(shù)MOVQUOTIENT+2,AL;高位商存放在QUOTIENT高位MOVAL,IDIVIDEND+1;除數(shù)第二位IDIVIDIVISOR;帶符號(hào)數(shù)除法指令A(yù)L<-AX/IDIVISOR的商AH<-AX/IDIVISOR的余數(shù)MOVQUOTIENT+1,ALMOVAL,IDIVIDENDIDIVDIVISOR;帶符號(hào)數(shù)除法指令A(yù)L<-AX/IDIVISOR的商AH<-AX/IDIVISOR的余數(shù)MOVQUOTIENT,AL;商存放在QUOTIENT中MOVREMAINDER,AH;余數(shù)存放在REMAINDER中CODEENDSENDSTART(2)求兩個(gè)2字長(zhǎng)的無符號(hào)數(shù)相乘的結(jié)果,并將結(jié)果保存在存儲(chǔ)空間中。開始開始62148567h->MULTIPLICAND84515647h->MULTIPLICATOR->-乘數(shù)低位被乘數(shù)的高位和低位分別相乘結(jié)果相加乘數(shù)高位與被乘數(shù)分別相乘結(jié)果相加并于低位結(jié)果相加存結(jié)果結(jié)束DATASEGMENTMULTIPLICANDDW8567H,6214H;表示數(shù)據(jù)62148567hMULTIPLICATORDW5647H,8451H;表示數(shù)據(jù)84515647hPRODUCTDW4DUP(0);存放乘法結(jié)果的積DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATA;DATA地址存入DSMOVDS,AXMOVAX,MULTIPLICAND;乘數(shù)最低位MULMULTIPLICATOR;乘數(shù)低位與被乘數(shù)低位相乘(DX,AX)←(AX)*(MULTIPLICATOR)兩個(gè)16數(shù)相乘得到32乘積存高16位存放DX中,低16位存放在AX中MOVPRODUCT,AX;低16位乘法結(jié)果存入PRODUCT位MOVPRODUCT+2,DX;高16位乘法結(jié)果存入PRODUCT+2高位MOVAX,MULTIPLICANDMULMULTIPLICATOR+2;乘數(shù)低位與被乘數(shù)高位相乘(DX,AX)←(AX)*(MULTIPLICATOR+2)ADDPRODUCT+2,AX;低16位乘法結(jié)果存入PRODUCT+2位與低位結(jié)果的高位相加ADCPRODUCT+4,DX;高16位乘法結(jié)果存入PRODUCT+4位與低位結(jié)果的高位進(jìn)位相加ADCPRODUCT+6,0MOVAX,MULTIPLICAND+2;乘數(shù)高位MULMULTIPLICATOR;乘數(shù)高位與被乘數(shù)低位位相乘ADDPRODUCT+2,AX;ADCPRODUCT+4,DXADCPRODUCT+6,0MOVAX,MULTIPLICAND+2MULMULTIPLICATOR+2;乘數(shù)高位與被乘數(shù)高位相乘ADDPRODUCT+4,AXADCPRODUCT+6,DXCODEENDSENDSTART第三章邏輯運(yùn)算、移位操作及數(shù)碼轉(zhuǎn)換編程實(shí)驗(yàn)實(shí)驗(yàn)一邏輯運(yùn)算編程實(shí)驗(yàn)(驗(yàn)證性實(shí)驗(yàn))一、實(shí)驗(yàn)要求和目的1.了解匯編語言的邏輯運(yùn)算指令; 2.熟悉匯編語言中邏輯運(yùn)算指令的使用方法; 3.掌握利用匯編語言邏輯運(yùn)算指令實(shí)現(xiàn)程序設(shè)計(jì)的方法。二、實(shí)驗(yàn)內(nèi)容與步驟1、實(shí)驗(yàn)內(nèi)容(1)用A命令編寫程序片段,實(shí)現(xiàn)邏輯非,邏輯與,邏輯或,邏輯異或,邏輯測(cè)試運(yùn)算;(2)得到實(shí)際的結(jié)果,用T或P命令查看結(jié)果正確性。(3)實(shí)驗(yàn)例子,邏輯非:NOT14H邏輯與:32HAND0FH 邏輯或:32HOR0FH 邏輯異或:32HXOR0FH(4)進(jìn)行邏輯測(cè)試運(yùn)算中,注意狀態(tài)和標(biāo)志位的變化,并記錄。三、實(shí)驗(yàn)步驟邏輯非:NOT14H進(jìn)入DEBUG調(diào)試環(huán)境,用A命令輸入程序片段如圖所示。(2)圖3-1是實(shí)現(xiàn)的是邏輯非的運(yùn)算驗(yàn)證。然后,用P或T命令查看寄存器AX內(nèi)容的變化,如圖所示。狀態(tài)位:OF(溢出):0沒有溢出DF(方向標(biāo)志):0IF(中斷允許):1SF(符號(hào)):0正數(shù)ZF(零標(biāo)志):0非零AF(輔助進(jìn)位):0無進(jìn)位PF(奇偶):0奇數(shù)個(gè)1CF(進(jìn)位):0最高位沒有產(chǎn)生進(jìn)位邏輯與:32HAND0FH(1)進(jìn)入DEBUG調(diào)試環(huán)境,用A命令輸入程序片段如圖所示。(2)圖3-1是實(shí)現(xiàn)的是邏輯非的運(yùn)算驗(yàn)證。然后,用P或T命令查看寄存器AX內(nèi)容的變化,如圖所示。狀態(tài)位:OF(溢出):0沒有溢出DF(方向標(biāo)志):0IF(中斷允許):1SF(符號(hào)):0正數(shù)ZF(零標(biāo)志):0非零AF(輔助進(jìn)位):0無進(jìn)位PF(奇偶):0奇數(shù)個(gè)1CF(進(jìn)位):0最高位沒有產(chǎn)生進(jìn)位邏輯或:32HOR0FH(1)進(jìn)入DEBUG調(diào)試環(huán)境,用A命令輸入程序片段如圖所示。(2)圖3-1是實(shí)現(xiàn)的是邏輯非的運(yùn)算驗(yàn)證。然后,用P或T命令查看寄存器AX內(nèi)容的變化,如圖所示。狀態(tài)位:OF(溢出):0沒有溢出DF(方向標(biāo)志):0IF(中斷允許):1SF(符號(hào)):0正數(shù)ZF(零標(biāo)志):0非零AF(輔助進(jìn)位):0無進(jìn)位PF(奇偶):0奇數(shù)個(gè)1CF(進(jìn)位):0最高位沒有產(chǎn)生進(jìn)位邏輯異或:32HXOR0FH(1)進(jìn)入DEBUG調(diào)試環(huán)境,用A命令輸入程序片段如圖所示。(2)圖3-1是實(shí)現(xiàn)的是邏輯非的運(yùn)算驗(yàn)證。然后,用P或T命令查看寄存器AX內(nèi)容的變化,如圖所示。狀態(tài)位:OF(溢出):0沒有溢出DF(方向標(biāo)志):0IF(中斷允許):1SF(符號(hào)):0正數(shù)ZF(零標(biāo)志):0非零AF(輔助進(jìn)位):0無進(jìn)位PF(奇偶):0奇數(shù)個(gè)1CF(進(jìn)位):0最高位沒有產(chǎn)生進(jìn)位測(cè)試寄存器是否為空(1)進(jìn)入DEBUG調(diào)試環(huán)境,用A命令輸入程序片段如圖所示。(2)圖3-1是實(shí)現(xiàn)的是邏輯非的運(yùn)算驗(yàn)證。然后,用P或T命令查看寄存器AX內(nèi)容的變化,如圖所示。狀態(tài)位:OF(溢出):0沒有溢出DF(方向標(biāo)志):0IF(中斷允許):1SF(符號(hào)):0正數(shù)ZF(零標(biāo)志):0非零AF(輔助進(jìn)位):0無進(jìn)位PF(奇偶):1偶數(shù)個(gè)1CF(進(jìn)位):0最高位沒有產(chǎn)生進(jìn)位四、思考與練習(xí)以及測(cè)評(píng)標(biāo)準(zhǔn)1、對(duì)寄存器清0,有幾種方式?怎樣用邏輯運(yùn)算命令來實(shí)現(xiàn)?解:(1)與本身異或例如對(duì)AX清空XORAX,AX(2)與00H進(jìn)行與運(yùn)算例如ANDAX,00H2、邏輯測(cè)試命令前后,狀態(tài)和標(biāo)志有什么變化?為什么?邏輯非指令NOT指令執(zhí)行后對(duì)標(biāo)志位無影響邏輯與指令A(yù)ND受影響的標(biāo)志位:CF、OF為0,PF、SF和ZF根據(jù)運(yùn)算定,AF無定義。邏輯或指令OR受影響的標(biāo)志位:CF、OF為0,PF、SF和ZF根據(jù)運(yùn)算定,AF無定義。邏輯異或命令XOR受影響的標(biāo)志位:CF、OF為0,PF、SF和ZF根據(jù)運(yùn)算定,AF無定義。邏輯測(cè)試命令TEST受影響的標(biāo)志位:CF、OF為0,PF、SF和ZF根據(jù)運(yùn)算定,AF無定義。3、檢測(cè)一操作數(shù)與另一確定的操作數(shù)是否相等,用邏輯指令如何實(shí)現(xiàn)?XORAX,BX若零標(biāo)志位結(jié)果為0,則表示兩操作數(shù)相等實(shí)驗(yàn)二移位操作編程實(shí)驗(yàn)(設(shè)計(jì)性實(shí)驗(yàn))一、實(shí)驗(yàn)要求和目的 1.了解匯編語言移位操作指令;2.熟悉匯編語言邏輯移位指令的使用方法;3.掌握利用匯編語言邏輯移位運(yùn)算指令實(shí)現(xiàn)程序設(shè)計(jì)的方法。二、實(shí)驗(yàn)內(nèi)容與步驟 1、實(shí)驗(yàn)內(nèi)容(1)用A命令寫程序片段,在寄存器AX中存入一個(gè)數(shù),要求對(duì)其用移位命令進(jìn)行乘8,除4的操作。(2)編寫程序片段,實(shí)現(xiàn)如下的計(jì)算A=10*B,要求用到移位命令,不用乘法計(jì)算。(3)編寫指令序列把由DX和AX組成的32位二進(jìn)制數(shù)進(jìn)行算術(shù)左移。 2、實(shí)驗(yàn)步驟(1)預(yù)習(xí)移位命令的基本知識(shí),熟悉這些命令的基本操作,根據(jù)實(shí)驗(yàn)內(nèi)容,整理編程思路;(2)利用在DEBUG調(diào)試中的A命令輸入對(duì)應(yīng)程序片段;(3)對(duì)寫好的程序片段,利用DEBUG的T、P命令或G命令查看數(shù)據(jù)區(qū),核對(duì)實(shí)驗(yàn)結(jié)果。三、實(shí)驗(yàn)步驟(1)乘以8=算術(shù)左移三位MOVAX,0004MOVCL,3SHLAX,CL除以4=算術(shù)右移兩位MOVAX,0004MOVCL,2SARAX,CL(2)A=10*BMOVAX,0004MOVDX,AXMOVCL,2SHLDX,CLADDAX,DXSHLAX,1(3)該數(shù)為3423H=0011010000100011B左移后結(jié)果為0110100001000110=6846MOVAX,23HMOVDX,34HSHLAX,1RCLDX,1六、思考與練習(xí)以及測(cè)評(píng)標(biāo)準(zhǔn)1.執(zhí)行以下命令,觀察AX是否有變化:(1)SALAX,1
SARAX,1
(2)SARAX,1
SALAX,1實(shí)驗(yàn)三ASCII碼表示的十進(jìn)制數(shù)、二進(jìn)制數(shù)和BCD的互換編程實(shí)驗(yàn)一、實(shí)驗(yàn)要求和目的 1.了解匯編語言中的十進(jìn)制、二進(jìn)制、BCD碼的表示形式;2.了解BCD值和ASCII值的區(qū)別3.了解如何查表進(jìn)行數(shù)值轉(zhuǎn)換及快速計(jì)算。4.掌握利用匯編語言進(jìn)行進(jìn)制轉(zhuǎn)換的方法。四、實(shí)驗(yàn)內(nèi)容與步驟 1、實(shí)驗(yàn)內(nèi)容(1)將一個(gè)用ASCII碼表示的多位十進(jìn)制轉(zhuǎn)換為二進(jìn)制,要求十進(jìn)制不大于65535,且輸入數(shù)碼為無符號(hào)數(shù)。(2)將用ASCII碼表示的數(shù)字串,轉(zhuǎn)化為壓縮的BCD碼。 2、實(shí)驗(yàn)步驟(1)預(yù)習(xí)ASCII碼、BCD碼的基本知識(shí),以及進(jìn)制轉(zhuǎn)換的相關(guān)操作,根據(jù)實(shí)驗(yàn)內(nèi)容,寫出程序思路;(2)編寫匯編源程序,取名為“ch33-1.ASM”、“ch33-2.ASM”;(3)匯編、連接該源程序,產(chǎn)生“ch33-1.EXE”、“ch33-2.EXE”文件;(4)對(duì)兩個(gè)文件進(jìn)行調(diào)試運(yùn)行:利用DEBUG的T或P命令或G命令和D命令查看數(shù)據(jù)區(qū),觀看運(yùn)行結(jié)果。五、實(shí)驗(yàn)要求與提示1、實(shí)驗(yàn)要求 (1)畫出各程序流程圖; (2)列出程序清單,加上適量注釋; (3)回答思考問題;(4)記錄實(shí)驗(yàn)結(jié)果。2、實(shí)驗(yàn)提示(1)十進(jìn)制數(shù)字串轉(zhuǎn)二進(jìn)制從最高位開始,重復(fù)進(jìn)行“高位*10+低位”的操作,用公式表示為ΣDi×10i=((…(Dn×10+Dn-1)×10)+Dn-2)×10+…+D1)×10+D0(2)將ASCII碼轉(zhuǎn)換為壓縮BCD碼,將ASCII碼的高4位置0,再將十位ASCII碼的低4位左移至高4位,再與個(gè)位ASCII碼相或。采用約定寄存器法傳遞參數(shù)。三、實(shí)驗(yàn)程序(1)將一個(gè)用ASCII碼表示的多位十進(jìn)制轉(zhuǎn)換為二進(jìn)制,要求十進(jìn)制不大于65535,且輸入數(shù)碼為無符號(hào)數(shù)。流程圖:高位乘十加上低位開始開始輸入數(shù)碼串調(diào)用十進(jìn)制碼到二進(jìn)制數(shù)值的轉(zhuǎn)換bx的最高位循環(huán)移位到d0位保留dl中的d0位 把d0位的一位二進(jìn)制數(shù)轉(zhuǎn)換為ASCII碼[bx]指向最高位數(shù)碼cx是位數(shù)cx=0?高位乘10;加低位結(jié)束data segmentpr1 db"Inputanumberstring:$" ;輸入數(shù)碼串的提示pr2 db0ah,0dh,"Out:$" ;輸出提示buff db6nu db0stringdb6dup("0")data endscode segment assumecs:code,ds:datastart: movax,data movds,ax leadx,pr1 ;顯示輸入提示 movah,09h int21h movah,0ah ;輸入數(shù)碼 movdx,offsetbuff int21h leabx,nu ;bx:數(shù)碼緩沖區(qū)首地址 calldtobin ;調(diào)用十進(jìn)制碼到二進(jìn)制數(shù)值的轉(zhuǎn)換 movbx,ax ;ax中的二進(jìn)制數(shù)值存到bx leadx,pr2 ;顯示輸出提示 movah,09h int21h movcx,16 ;16表示二進(jìn)制數(shù)的位數(shù)lp: rolbx,1 ;bx的最高位循環(huán)移位到d0位 movdl,bl anddl,01h
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 非小細(xì)胞肺癌靶向治療后小細(xì)胞轉(zhuǎn)化及免疫治療療效預(yù)測(cè)的研究
- 特種電線電纜的綠色生產(chǎn)技術(shù)及其發(fā)展趨勢(shì)
- PSMG4基因促進(jìn)結(jié)直腸癌細(xì)胞生長(zhǎng)及分子機(jī)制研究
- 熱處理對(duì)擠壓Mg-Y-Cu合金屈服及PLC效應(yīng)的影響
- 實(shí)驗(yàn)室安全文化行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 家用便攜式呼吸機(jī)配件企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力戰(zhàn)略研究報(bào)告
- 仿制藥國際化注冊(cè)行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 黑河中游國土空間沖突識(shí)別及模擬研究
- 電動(dòng)機(jī)在醫(yī)療設(shè)備中的應(yīng)用與優(yōu)化
- 便攜式緊急救援藥品包行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報(bào)告
- 美發(fā)店承包合同范本(2篇)
- 《大學(xué)俄語》教學(xué)大綱
- 清淤工程施工記錄表
- TCITSA 24-2022 基于ETC的高速公路自由流收費(fèi)技術(shù)規(guī)范
- 2022年涉農(nóng)領(lǐng)域涉嫌非法集資風(fēng)險(xiǎn)專項(xiàng)排查工作總結(jié)
- 起重裝卸機(jī)械操作工國家職業(yè)技能標(biāo)準(zhǔn)(2018年版)
- 叉車裝卸區(qū)域安全風(fēng)險(xiǎn)告知牌
- 五年級(jí)下冊(cè)美術(shù)課件-第2課 新街古韻丨贛美版
- 秦荻輝科技英語寫作教程練習(xí)答案(共42頁)
- GB∕T 41168-2021 食品包裝用塑料與鋁箔蒸煮復(fù)合膜、袋
- 部編版語文一年級(jí)下冊(cè)繪本閱讀課-優(yōu)質(zhì)課件.pptx
評(píng)論
0/150
提交評(píng)論