《匯編語(yǔ)言程序設(shè)計(jì)》實(shí)驗(yàn)指導(dǎo)書(shū).doc_第1頁(yè)
《匯編語(yǔ)言程序設(shè)計(jì)》實(shí)驗(yàn)指導(dǎo)書(shū).doc_第2頁(yè)
《匯編語(yǔ)言程序設(shè)計(jì)》實(shí)驗(yàn)指導(dǎo)書(shū).doc_第3頁(yè)
《匯編語(yǔ)言程序設(shè)計(jì)》實(shí)驗(yàn)指導(dǎo)書(shū).doc_第4頁(yè)
《匯編語(yǔ)言程序設(shè)計(jì)》實(shí)驗(yàn)指導(dǎo)書(shū).doc_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

實(shí)驗(yàn)一 簡(jiǎn)單程序編制和上機(jī)過(guò)程一實(shí)驗(yàn)?zāi)康? 掌握計(jì)算機(jī)常用代碼的軟件轉(zhuǎn)換技術(shù)。2 熟悉DEBUG軟件的使用。3 掌握簡(jiǎn)單程序的編程方法。二實(shí)驗(yàn)內(nèi)容 代碼轉(zhuǎn)換是計(jì)算機(jī)和I/O設(shè)備進(jìn)行信息交換的重要技術(shù)之一。各種I/O設(shè)備所提供和接收的數(shù)據(jù)編碼不盡相同。為了處理這些信息,計(jì)算機(jī)必須將各種不同編碼形式的信息轉(zhuǎn)換成別種適當(dāng)?shù)臄?shù)據(jù)形式。例如,鍵盤(pán)輸入的數(shù)據(jù)均為ASC碼形式存儲(chǔ)在內(nèi)存中,通常要求將其轉(zhuǎn)換成相應(yīng)的數(shù)據(jù)形式。一般實(shí)現(xiàn)代碼轉(zhuǎn)換有兩種方法:1軟件法 利用CPU的算術(shù)邏輯運(yùn)算功能,通過(guò)運(yùn)算或查表實(shí)現(xiàn)各種數(shù)據(jù)代碼間的轉(zhuǎn)換。該方法經(jīng)濟(jì)但速度慢。2硬件法 利用專用代碼轉(zhuǎn)換集成電路進(jìn)行轉(zhuǎn)換。如74LS74可把BCD碼轉(zhuǎn)換為七段代碼。這種方法需要硬件費(fèi)用,但速度快。本實(shí)驗(yàn)要求掌握軟件編碼轉(zhuǎn)換技術(shù)。計(jì)算機(jī)常用的代碼有二進(jìn)制、八進(jìn)制、十六進(jìn)制、BCD碼、ASC碼、七段碼等,它們之間的相互關(guān)系如下表所示。常用數(shù)值對(duì)照表16進(jìn)制數(shù)二進(jìn)制碼八進(jìn)制碼BCD碼16進(jìn)制碼ASCII碼七段碼共陽(yáng)共陰000000000000030H40H3FH110010001000131H79H06H20100010001032H24H5BH30110011001133H30H4FH41000100010034H 19H66H51010101010135H12H6DH61100110011036H02H7DH71110111011137H78H07H81000100038H00H7FH91001100139H18H67HA101041H08H77HB101142H03H7CHC110043H46H39HD110144H21H5EHE111045H06H79HF111146H0EH71H本次試驗(yàn)的內(nèi)容是ASC碼轉(zhuǎn)換為未組合BCD碼設(shè)從鍵盤(pán)輸入十進(jìn)制數(shù)的ASC碼已存放在起始地址CS :150H的單元中,把它轉(zhuǎn)換成未組合BCD碼后,再分別存入起始地址為CS:15AH的單元中。若輸入的不是十進(jìn)制數(shù)的ASC碼,則相應(yīng)存放結(jié)果單元的內(nèi)容為“FF”。提示:1組合BCD碼是一位十進(jìn)制數(shù)字占一個(gè)字節(jié),高半字節(jié)為0,低半字節(jié)為該十進(jìn)制數(shù)字的BCD碼。ASC碼轉(zhuǎn)換為未組合BCD碼只需減30H。2程序框圖如下圖所示。3程序執(zhí)行前,需要在CS:150H內(nèi)存緩沖區(qū)寫(xiě)入待轉(zhuǎn)換的ASC碼。方法如下:方法一:用A命令-ACS:150 DB 35,39,30,41,32CS:155 C方法二:用E 命令-ECS:150,35,39,30,41,32方法三:用F命令-FCS:150 L5 35,39,30,41,321 執(zhí)行程序后檢查執(zhí)行結(jié)果可用D命令:-DCS:15ACS:15A 05,09,00,F(xiàn)F,02開(kāi)始給循環(huán)計(jì)數(shù)器CX賦轉(zhuǎn)換代碼長(zhǎng)度ASCII碼首地址送DI錯(cuò)誤標(biāo)志“FF”送BLASCII碼送AL BCD碼送BL減30HCF=1?CX1=0?結(jié)束轉(zhuǎn)換結(jié)果送起始地址為15AH的存儲(chǔ)區(qū)錯(cuò)誤標(biāo)志“FF”送AL是9的ASCII碼?ASC碼轉(zhuǎn)換為未組合BCD碼的程序流程圖參考程序如下:ORG 100HMOV CX,0005HMOV DI,150HBB: MOV BL,0FFHMOV A,DICMP AL,3AHJNB DONESUB AL,30HJB DONEMOV BL,ALDONE: MOV AL,BLMOV DI+0AH,ALINC DILOOP BBINT 20HORG 150HDB 35H,39H,30H,41H,32H實(shí)驗(yàn)二 順序結(jié)構(gòu)的程序設(shè)計(jì)一實(shí)驗(yàn)?zāi)康?掌握計(jì)算機(jī)常用代碼的軟件轉(zhuǎn)換技術(shù)。2進(jìn)一步首席DEBUG軟件的使用。3掌握簡(jiǎn)單順序結(jié)構(gòu)程序的編程方法。二實(shí)驗(yàn)內(nèi)容本次實(shí)驗(yàn)的內(nèi)容延續(xù)上一次實(shí)驗(yàn)內(nèi)容,將16進(jìn)制數(shù)轉(zhuǎn)換為ASC碼,相關(guān)內(nèi)容參看上一次實(shí)驗(yàn)的表格。設(shè)經(jīng)過(guò)CPU運(yùn)算后的4位16進(jìn)制數(shù)已存放在CS:150H字單元中,把它轉(zhuǎn)換為ASC碼后分別存入CS:15AH為起始地址的4個(gè)單元中,低位數(shù)存在低地址的字節(jié)中。提示:1十六進(jìn)制數(shù)0-9H加30H即可得到ASC碼,而A-FH則需要加37H,也就是加7H后再加30H,才能完成轉(zhuǎn)換。因此對(duì)每一位十六進(jìn)制數(shù)應(yīng)先判斷是0-9H的數(shù)還是AFH的數(shù),再分別加30H和37H即可完成轉(zhuǎn)換。24位數(shù)的轉(zhuǎn)換需用循環(huán)程序結(jié)構(gòu)。用CX作為計(jì)數(shù)器,DI作為地址指針,指向150H單元,則DI+0AH就指向結(jié)果存放單元。用邏輯右移指令使高位逐個(gè)地移至個(gè)位,用AND指令可以將個(gè)位從4位數(shù)中分離出來(lái)進(jìn)行轉(zhuǎn)換。MOV CL,04HSHR DX,CL兩條指令使DX中的數(shù)右移4位,由于CX已用做循環(huán)控制計(jì)數(shù)器,因此右移前應(yīng)將CX壓棧保護(hù),移位后再出?;謴?fù)CX。3程序流程圖如下圖所示。開(kāi)始CX4取4位數(shù)送DXDI指向150H加07H分離個(gè)位DXAXDI1DI存放結(jié)果加30HDX右移4位結(jié)束是09之間的數(shù)?4位轉(zhuǎn)換完否?NYNY 16進(jìn)制數(shù)轉(zhuǎn)換為ASCII碼程序流程圖參考程序如下:ORG 100HMOV CX,0004H ;給循環(huán)計(jì)數(shù)器賦轉(zhuǎn)換代碼長(zhǎng)度MOV DI,0150H ;16進(jìn)制數(shù)首地址送DIMOV DX,DI ;16進(jìn)制數(shù)送DXAA: MOV AX,DXAND AX,000FH ;取低四位值CMP AL,0AH ;判別是否為“0-9”數(shù)JB ASC ;是“0-9”數(shù)轉(zhuǎn)ASCADD AL,07H ;是“A-F”數(shù)加7ASC ADD L,30H ;轉(zhuǎn)換為ASCII碼MOV DI+0AH,AL ;ASCII碼送15AH單元INC DIPUSH CX ;保護(hù)循環(huán)計(jì)數(shù)器內(nèi)容MOV CL,04H ;置移位次數(shù)SHR DX,CL ;16進(jìn)制數(shù)右移4位POP CX ;循環(huán)計(jì)數(shù)器內(nèi)容出棧LOOP AA ;(CX)0,轉(zhuǎn)AAINT 20HORG 150HDW 45A7H實(shí)驗(yàn)三 分支結(jié)構(gòu)的程序設(shè)計(jì)一實(shí)驗(yàn)?zāi)康? 掌握計(jì)算機(jī)常用代碼的軟件轉(zhuǎn)換技術(shù)。2 熟悉DEBUG軟件的使用。3 掌握分支結(jié)構(gòu)程序的編程方法。二實(shí)驗(yàn)內(nèi)容本次實(shí)驗(yàn)的內(nèi)容延續(xù)第一次實(shí)驗(yàn)內(nèi)容,將BCD碼轉(zhuǎn)換為二進(jìn)制碼,相關(guān)內(nèi)容參看第一次實(shí)驗(yàn)中的表格。在各種智能儀器和信息處理中,人們總習(xí)慣于十進(jìn)制數(shù)來(lái)表示信息。但是絕大多數(shù)計(jì)算機(jī)沒(méi)有十進(jìn)制運(yùn)算指令(僅有十進(jìn)制調(diào)整指令)。這是因?yàn)閷?shí)現(xiàn)十進(jìn)制算術(shù)運(yùn)算的硬件電路要比采用二進(jìn)制算術(shù)運(yùn)算的硬件電路復(fù)雜得多。例如,當(dāng)兩個(gè)整數(shù)進(jìn)行算術(shù)運(yùn)算時(shí),對(duì)一個(gè)N進(jìn)制的數(shù)需記住N(N+1)/2個(gè)“積”與“和”,當(dāng)N=10時(shí),需記住55個(gè)“積”與“和”;而當(dāng)N=2時(shí),只需記住3個(gè)。從占用存儲(chǔ)空間來(lái)看,采用二進(jìn)制數(shù)比采用十進(jìn)制數(shù)要節(jié)省得多。例如,8bit表示十進(jìn)制數(shù),其數(shù)值范圍為0-99,而8bit表示的二進(jìn)制數(shù)則為0-255(均指無(wú)符號(hào)數(shù))。所以,常規(guī)的方法是將輸入的十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)后,再進(jìn)行各種數(shù)據(jù)處理。BCD碼分別為組合BCD碼和未組合BCD碼。組合BCD碼每字節(jié)存放兩位BCD數(shù),未組合BCD碼每字節(jié)只存放一位BCD數(shù),高半字節(jié)為0。組合BCD碼加、減后必須用DAA和DAS指令進(jìn)行調(diào)整(乘法或除法沒(méi)有調(diào)整指令)。未組合BCD碼則可進(jìn)行加、減、乘、除四則運(yùn)算,其調(diào)整指令分別為AAA、AAS、AAM和AAD。組合BCD碼轉(zhuǎn)換位二進(jìn)制數(shù)的算法通過(guò)實(shí)例說(shuō)明于下。一個(gè)組合BCD碼表示的數(shù)可以用其按權(quán)展開(kāi)式表示。例如 2497=2*1000+4*100+9*10+7*1 =2*3E8H+4*64H+9*0AH+7*1H由此,逐位轉(zhuǎn)換后相加便可得到結(jié)果。改用另一種表示方法,可以寫(xiě)成 2497=(2*10)+4)*10)+9)*10)+7而10=8+2,于是便可以采用循環(huán)結(jié)構(gòu)程序來(lái)完成轉(zhuǎn)換。本實(shí)驗(yàn)是要把兩位未組合BCD碼數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)。設(shè)未組合BCD碼已存放在起始地址為CS:150H的區(qū)域,把它們轉(zhuǎn)換為二進(jìn)制數(shù)后,再分別存入起始地址為CS:165H的區(qū)域。例如ORG 150HDB 03H,06H,08H,09H,06H,05H,02H,09H則轉(zhuǎn)換后CS:165H開(kāi)始的單元的內(nèi)容為:CS:165H 24H,00H,59H,00H,41H,00H,1DH,00H提示:1 算法是十位*10+個(gè)位。其中的*10可以用10=8+2來(lái)實(shí)現(xiàn)。2 程序流程圖如下圖所示。開(kāi)始CX設(shè)置循環(huán)次數(shù)DI指向150H十位10取BCD碼十位送AL結(jié)束存放結(jié)果加上個(gè)位循環(huán)次數(shù)-10? BCD碼轉(zhuǎn)換為二進(jìn)制碼程序流程圖參考程序如下:ORG 100HSTART: MOV CX,0004H ;給循環(huán)計(jì)數(shù)器賦轉(zhuǎn)換代碼長(zhǎng)度MOV DI,150H ;BCD碼首址送DIAA: MOV AL,DI ;BCD碼十位數(shù)值賦ALADD AL,AL ;*2MOV BL,ALADD AL,AL ;*4ADD AL,AL ;*8ADD AL,BL ;*10INC DIMOV AH,OOHADD AL,DI ;BCD碼十位和個(gè)位相加,轉(zhuǎn)換結(jié)束MOV DI+14H,AX ;轉(zhuǎn)換結(jié)果存起始地址165H單元INC DILOOP AA ;(CX)0INT 20HORG 150HDB 03H,06H,08H,09H,06H,05H,02H,09H 實(shí)驗(yàn)四 循環(huán)結(jié)構(gòu)的程序設(shè)計(jì)一實(shí)驗(yàn)?zāi)康?學(xué)習(xí)并掌握數(shù)據(jù)傳送指令和算術(shù)運(yùn)算指令的用法。2熟悉PC機(jī)上建立、匯編、鏈接和運(yùn)行8088匯編語(yǔ)言程序的過(guò)程。3掌握循環(huán)結(jié)構(gòu)程序的編寫(xiě)方法。二實(shí)驗(yàn)內(nèi)容將兩個(gè)多位十進(jìn)制數(shù)相加,并在屏幕上顯示加數(shù)、被加數(shù)以及和。已知被加數(shù)和加數(shù)均以ASCII碼的形式存放在DATA1和DATA2為首的單元中(低位位于低地址),結(jié)果送回DATA1處。編程提示1因被加數(shù)和加數(shù)均以ASCII碼形式存放,所以在相加必須轉(zhuǎn)化為BCD碼,此時(shí)用未組合BCD碼最適宜。未組合BCD碼相加要用到AAA加法調(diào)整指令。2顯示數(shù)據(jù)可用2號(hào)DOS功能調(diào)用。3 程序流程圖如下圖所示。顯示被加數(shù)和加數(shù)ASCII16進(jìn)制數(shù)計(jì)數(shù)值CX清除最低位進(jìn)位執(zhí)行帶進(jìn)位加ADCAAA調(diào)整結(jié)果送被加數(shù)區(qū)調(diào)整偏移量CX-1=0?16進(jìn)制結(jié)果ASCII碼顯示結(jié)果結(jié)束YN 多位十進(jìn)制數(shù)相加程序流程圖參考程序如下:CRLF MACR0 ;建立宏指令CRLF MOV DL,0DH MOV AH,02H INT 21H MOV DL,0AH MOV AH,02H INT 21H ENDMDATA SEGMENTDATA1 DB 33H,39H,31H,37H,34HCOUNT EQU $-DATA1DATA2 DB 36H,35H,30H,38H,32HDATA ENDSSTACK SEGMENT STACD STACK DB 20 DUP(?)STACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATASTART:MOV AX,DATA MOV DS,AX MOV SI,OFFSET DATA2MOV BX,COUTNCALL DISPL ;顯示被加數(shù)CRLFMOV SI,OFFSET DATA1MOV BX,COUNT ;顯示加數(shù)CALL DISPLCRLFMOV DI,OFFSET DATA2CALL ADDA ;加法運(yùn)算MOV SI,OFFSET DATA1MOV BX,COUNTCALL DISPL ;顯示結(jié)果CRLFMOV AX,4C00HINT 21HDISPL PROC NEAR ;顯示子程序DIS: MOV AH,02H MOV DL,SI+BX-1 ;顯示字符串中一字符INC 21H DEC BX ;修改偏移量JNZ DS1RETDISPL ENDPADDA PROC NEAR MOV DX,SIMOV BP,DIMOV BX,COUNTAD1: SUB BYTE PTRSI+BX-1,30H SUB BYTE PTRDI+BX-1,30HDEC BX ;將ASCII碼數(shù)字串轉(zhuǎn)化為十進(jìn)制色數(shù)字串JNZ AD1MOV SI,DXMOV DI,BPMOV CX,COUNTCLCAD2: MOV AL,SI ADC AL,DIAAA ;非組合BCD碼的加法調(diào)整MOV SI,AL ;結(jié)果送被加數(shù)區(qū)INC SIINC DI ;指向下一位LOOP AD2MOV SI,DXMOV DI,BPMOV BX,COUNTAD3: ADD BYTE PTRSI+BX-1,30H ADD BYTE PTRDI+BX-1,30H ;十進(jìn)制數(shù)字串轉(zhuǎn)為ASCII碼表示的數(shù)據(jù)串DEC BXJNZ AD3RETADDA ENDPCODE ENDS END START 實(shí)驗(yàn)五 子程序設(shè)計(jì)和調(diào)用一實(shí)驗(yàn)?zāi)康?通過(guò)程序調(diào)試,觀察子程序調(diào)用及嵌套過(guò)程,進(jìn)一步理解CALL指令和RET指令的功能。2掌握子程序(或過(guò)程)調(diào)用時(shí)參數(shù)傳遞的方法。二實(shí)驗(yàn)內(nèi)容調(diào)試程序PCS5_1.ASM,使實(shí)現(xiàn)函數(shù)y=(a+b)2(a和b均為0-65535之間的值),并在屏幕上顯示y的值(十六進(jìn)制形式)。;PCS5-1.ASM TO BE DEBUGEDDATA SEGMENTA DW 125B DW 90Y DW 2 DUP(0)Z DW 0,0DATA ENDSSTA SEGMENT STACK STACK DW 50 DUP(S) STA ENDS CODE SEGMENT ASSUME CS:CDOE,DS:DATA,SS:STA STAR PROC FAR PUSH DS ;保存PSP首地址 XOP AX,AX MOV AX,A MOV Z,AX MOV Z+2,AX CALL MLT ;求A的平方 MOV AX,B MOV Z,AX MOV Z+2,AX CALL MLT ;求B的平方 MOV AX,A MOV Z,AX MOV AX,B MOV Z+2,AX CALL MLT ;求A*B ADD Y,AX ADC Y+2,DX ;再加一個(gè)A*B ADC Y+4,0CALL DSP6 ;顯示6位數(shù)RET STAR END MLT PROC ;Z和Z+2字單元內(nèi)容相乘 MOV AX,ZMOV BX,Z+2 MUL BX ADD Y,AXADC Y+2,DXADC Y+4,0RET MLT ENDP DSP6 PROC ;顯示6字節(jié)結(jié)果LEA SI,Y ADD SI,5 MOV CX,6 L1: MOV AL,BYTE PTRRCALL DSPAL DEC SI LOOP L1RET DSP6 ENDPDSPAL PROC ;顯示ALPUSH AX ;保護(hù)寄存器PUSH BXPUSH CXPUSH DXMOV BH,AL ;暫存與BHMOV BL,2MOV CL,4SHR AL,CL G1: CMP AL,10JGE G2OR AL,30HJMP G3G2: ADD AL,37HG3: MOV DL,AL ;CRT顯示 MOV AH,2 INT 21H DEC BL JZ G4 MOV AL,BH ;再處理低4位 AND AL,0FH JMP G1G4: POP DXPOP CX POP BXPOP AXRETDSPAL ENDPCODE ENDS END程序調(diào)試通過(guò)后,在DEBUG環(huán)境下觀察CALL和RET指令執(zhí)行時(shí)堆棧指針的變化及堆棧中壓入和彈出的內(nèi)容。 實(shí)驗(yàn)六 DOS功能調(diào)用一、實(shí)驗(yàn)?zāi)康恼莆粘S玫腄OS功能調(diào)用。二、實(shí)驗(yàn)內(nèi)容編程完成多位十進(jìn)制與一位十進(jìn)制數(shù)的乘法運(yùn)算,并在屏幕上顯示乘積。已知被乘數(shù)和乘數(shù)均以ASCII碼形式存放在內(nèi)存中,并且低位數(shù)存放在低地址。三、編程提示1十進(jìn)制數(shù)的乘法,必須在乘法指令后用AAM指令進(jìn)行調(diào)整。多位十進(jìn)制數(shù)乘一位十進(jìn)制數(shù),必須把每一位乘法運(yùn)算的部分積加至結(jié)果(乘積)單元,十進(jìn)制數(shù)相加還必須用AAA指令進(jìn)行調(diào)整。下面以兩位數(shù)乘一位數(shù)說(shuō)明其運(yùn)算過(guò)程。DATA1 DB 38H, 35H ;58(被乘數(shù))DATA2 DB 39H ;9(乘數(shù))RESULT DB 3DUP(0)先乘個(gè)位。08H09H后,AX0048H;經(jīng)AAM調(diào)整后AX=0702H。這個(gè)部分積加至乘積單元,因此RESULT單元內(nèi)容為:02H,07H,00H。再乘十位。05H09H后,AX002DH;經(jīng)AAM調(diào)整后AX=0405H。AX=0405H。AX這個(gè)部分積應(yīng)加至乘積單元的十位:05H07H,AL中得到0CH,經(jīng)AAA指令調(diào)整,AL加6并將高四位清零變成02H,AH則加1變成05H,于是AX0502H。低字節(jié)02H應(yīng)放入結(jié)果的十位,高字節(jié)05H應(yīng)送到百位。于是乘積單元內(nèi)容為02H,02H,05H,即589522,得到正確的十進(jìn)制積。2程序流程圖如下圖所示。乘數(shù)BLASCII碼16進(jìn)制數(shù)DI指向存儲(chǔ)結(jié)果區(qū)(預(yù)清零)SI指

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論