亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        分解組合法在程序設(shè)計(jì)中的應(yīng)用

        2013-09-04 00:47:50白云飛
        機(jī)械工程與自動化 2013年5期
        關(guān)鍵詞:組合法匯編語言個位

        白云飛

        (運(yùn)城學(xué)院 機(jī)電系,山西 運(yùn)城 044000)

        0 引言

        用高級語言編寫程序時,機(jī)器屏蔽了程序的細(xì)節(jié),即機(jī)器級的實(shí)現(xiàn),并且,用高級語言編寫的程序可以在很多不同的機(jī)器上編譯和執(zhí)行。匯編語言在行為上接近于機(jī)器代碼,形式上接近于高級語言,掌握匯編語言的程序設(shè)計(jì),能明確高級語言程序運(yùn)行的效率,從而優(yōu)化高級語言程序,并且能獲得更為安全的運(yùn)行環(huán)境,提高程序執(zhí)行的可靠性[1]。

        模塊化程序設(shè)計(jì)方法是按照各部分程序所實(shí)現(xiàn)的不同功能把程序劃分成多個模塊,各模塊在明確各自的功能和相互間的連接約定后,就可以分別編制和調(diào)試程序,最后再把它們連接起來,形成一個大程序[2]。這種設(shè)計(jì)方法實(shí)質(zhì)上就是一種分解組合法,編程時使用分解組合法,可以采用循環(huán)結(jié)構(gòu)、子程序結(jié)構(gòu),能改善程序的可讀性,減少程序的存儲空間,提高程序執(zhí)行的效率。

        1 分解組合法的具體應(yīng)用

        本文以一個實(shí)際的匯編語言源程序的編制來說明分解組合法的應(yīng)用。任務(wù)是把存放在存儲器中的任意一個四位十進(jìn)制數(shù)轉(zhuǎn)化為壓縮BCD碼形式存放。

        四位十進(jìn)制數(shù)在存儲器中無論是以二進(jìn)制形式存放,還是以BCD碼形式存放,它們所表示的數(shù)的大小是一樣的。用分解組合法,先把二進(jìn)制形式的十進(jìn)制數(shù)分解為千位值、百位值、十位值和個位值,然后再組合為BCD碼形式。以提取千位值來說明其算法:將該十進(jìn)制數(shù)的二進(jìn)制形式記為[X]2,設(shè)置一個計(jì)數(shù)器,讓[X]2重復(fù)執(zhí)行減1 000操作,并測試CF的取值[3];[X]2每執(zhí)行一次減1 000操作,然后測試CF=0時,計(jì)數(shù)器加1,這樣,執(zhí)行同樣的操作步驟,直到CF=1停止計(jì)數(shù),這時計(jì)數(shù)器的值就是千位值。

        把千位值提取出來后,再執(zhí)行一次加1 000操作,就得到了百位數(shù)。用同樣的方法,可以提取出百位值、十位值和個位值。

        接口就是加法操作所得到的要傳遞給后續(xù)分解用的數(shù)據(jù)。把千位值、百位值、十位值和個位值組合為BCD數(shù)時,可采用進(jìn)行多次移位的方法來實(shí)現(xiàn)。

        根據(jù)以上分析,編寫完整的匯編語言源程序如下:

        DATA SEGMENT

        BINNUM DW 9999

        DATA1DW 1000,100,10

        THOUB DW 3DUP (0)

        BCD DW 0

        DATA ENDS

        CODE SEGMENT

        ASSUME CS:CODE,DS:DATA

        START:MOV AX,DATA

        MOV DS,AX

        MOV BX,BINNUM

        LEA DI,DATA1

        LEA SI,THOUB

        MOV CX,3

        L1:MOV AX,[DI]

        CALL SUBB;調(diào)用提取子程序

        MOV [SI],DX ;送存儲單元保存

        INC SI

        INC SI

        INC DI

        INC DI

        LOOP L1;通過循環(huán)實(shí)現(xiàn)逐位提取并保存

        MOV DX,3

        MOV SI,OFFSET THOUB

        L2:MOV AX,[SI]

        OR BCD,AX

        MOV CL,4

        SHL BCD,CL

        INC SI

        INC SI

        DEC DX

        JNZ L2;左移三次,每次移四位組合三次

        OR BCD,BX ;組合個位數(shù)字

        MOV AH,4CH

        INT 21H

        SUBB PROC NEAR ;子程序采用循環(huán)結(jié)構(gòu)

        MOV DX,0;給計(jì)數(shù)器DX清零

        L3:SUB BX,AX

        JC L4

        INC DX

        JMP L3

        L4:ADD BX,AX

        RET

        SUBB ENDP

        CODE ENDS

        END START

        該匯編語言源程序的總體結(jié)構(gòu)是:主程序+子程序。主程序由兩個循環(huán)體構(gòu)成,子程序也是循環(huán)結(jié)構(gòu),符合模塊化程序設(shè)計(jì)的要求。程序結(jié)構(gòu)緊湊,層次清晰。

        在計(jì)算機(jī)上用匯編程序MASM和鏈接程序LINK運(yùn)行該匯編源程序,得到的實(shí)驗(yàn)結(jié)果如圖1所示。

        實(shí)驗(yàn)結(jié)果表明該匯編源程序能實(shí)現(xiàn)任務(wù)要求。

        2 結(jié)論

        以上匯編程序的編制表明使用分解組合法可以降低問題的難度,容易找到解決問題的方法和途徑。在具體提取過程中,CPU執(zhí)行的是減法和加法指令,在組合過程中,CPU執(zhí)行的是移位和邏輯或指令,使用的電路簡單、效率高、可靠性好。

        圖1 實(shí)驗(yàn)結(jié)果

        [1] Randal E Bryant,David R O’Hallaron.深入理解計(jì)算機(jī)系統(tǒng)[M].龔奕利,雷迎春,譯.北京:機(jī)械工業(yè)出版社,2010.

        [2] 沈美明,溫冬嬋.IBM-PC匯編語言程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2006.

        [3] 姚燕南,薛鈞義.微型計(jì)算機(jī)原理及接口技術(shù)[M].北京:高等教育出版社,2004.

        猜你喜歡
        組合法匯編語言個位
        奇妙的組合法
        數(shù)列前n項(xiàng)和的一種求法
        高等學(xué)校計(jì)算機(jī)專業(yè)課程教學(xué)改革實(shí)踐——以匯編語言與接口技術(shù)課程為例
        匯編語言與C語言的混合程序設(shè)計(jì)技術(shù)研究
        電子制作(2019年10期)2019-06-17 11:45:16
        個位與十位的故事
        個位與十位的故事
        個位與十位的故事
        “拼”出來的精彩
        ——記敘文選材組材創(chuàng)新方法之三
        青少年日記(2018年3期)2018-11-30 06:43:21
        提高《匯編語言程序設(shè)計(jì)》教學(xué)效率的思考與實(shí)踐
        學(xué)習(xí)100以內(nèi)的數(shù)三要點(diǎn)
        2021国产精品视频网站| 久久男人av资源网站无码| 无码高潮少妇毛多水多水免费| 午夜桃色视频在线观看| 97丨九色丨国产人妻熟女| 亚洲国产成人久久综合下载| 国产三级在线视频播放| 中国老太老肥熟女视频| 中文字幕一区二三区麻豆| 4hu四虎永久免费地址ww416| 日韩精品一区二区三区免费视频| 99热最新在线观看| 一区二区日本影院在线观看| 国产亚洲精品av一区| 久久99精品久久久久久9蜜桃| 人妻人人澡人人添人人爽人人玩| 亚洲精品动漫免费二区| 久久精品国产9久久综合| 国模冰莲自慰肥美胞极品人体图| 日日噜噜夜夜狠狠久久无码区| 91精品日本久久久久久牛牛| 人妻少妇被猛烈进入中文| 亚洲自偷自拍另类第1页| 亚洲乱码国产一区三区| 亚州毛色毛片免费观看| 亚洲国模一区二区三区视频| 亚洲精品女人天堂av麻| 精品亚洲成a人在线观看| 精品久久人人爽天天玩人人妻| 国产成人无精品久久久| 久久婷婷综合色一区二区| 国产精品办公室沙发| 国产精品 高清 尿 小便 嘘嘘| AV在线毛片| 丰满人妻中文字幕一区三区| 私人毛片免费高清影视院| 色综合另类小说图片区| 色综合久久人妻精品日韩| 精品无码一区二区三区爱欲| 日日躁夜夜躁狠狠躁超碰97| 亚洲人成网站www|