久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4321|回復: 0
打印 上一主題 下一主題
收起左側

匯編語言常見例子

[復制鏈接]
跳轉到指定樓層
樓主
ID:60076 發表于 2014-4-30 18:06 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

1、編寫程序計算Z=(X*X-3*Y)/2
DATA    SEGMENT
X    DB    25
Y    DB    32
Z    DW    ?
DATA    ENDS

CODE    SEGMENT
     ASSUME    CS:CODE,DS:DATA
START:    MOV    AX,DATA
     MOV    DS,AX
     MOV    AL,X
     MUL    AL
     MOV    BX,0
     MOV    BL,Y
     ADD    BL,BL
     ADC    BH,0
     ADD    BL,Y
     ADC    BH,0
     SUB    AX,BX
     SHR    AX,1
     MOV    Z,AX
     MOV    AH,4CH
     INT    21H
CODE    ENDS
     END    START
2、編寫程序完成多字節相加
DATA    SEGMENT
DAT1    DB    5EH,89H
DAT2    DB    40H,OABH
DAT3    DW    ?
DATA    ENDS
CODE    SEGMENT
     ASSUME    CS:CODE,DS:DATA
START:    MOV    AX,DATA
     MOV    DS,AX
     MOV    SI,0
     MOV    AL,DAT1[SI]
     MOV    AL,DAT2[SI]
     MOV    DAT3[SI],AL
     INC    SI
     MOV    AL,DAT1[SI]
     ADC    AL,DAT2[SI]
     MOV    DAT3[SI],AL
     MOV    AH,4CH
     INT    21H
CODE    ENDS
     END    START
3、查表求平方和
DATA    SEGMENT
TABL    DB    0,1,4,9,16,25,36,49
     DB    64,81,100,121,144,169,225
XD    DB    ?
YD    DB    ?
DATA    ENDS
STACK    SEGMENT    STACK    'STACK'
STA    DB    50    DUP    (?)
TOP    EQU    LENGTH    STA
STACK    ENDS
CODE    SEGMENT   
     ASSUME    CS:CODE,DS:DATA,SS:STACK
START:    MOV    AX,DATA
     MOV    DS,AX
     MOV    AX,STACK
     MOV    SS,AX
     MOV    SP,TOP
     MOV    BX,OFFSET    TABL
     MOV    AH,0
     MOV    AL,XD
     ADD    BX,AX
     MOV    AL,[BX]
     MOV    YD,AL
     MOV    AH,4CH
     INT    21H
CODE    ENDS
     END    START
4、源數據塊和目的數據塊是否有重疊來決定采用增址還是減址方式傳送
DATA    SEGMENT
STRG    DB    1000    DUP(?)
BLOK1    EQU    STRG+5
BLOK2    EQU    STRG+10
BLENG    EQU    100
DATA    ENDS
CODE    SEGMENT
     ASSUME    CS:CODE,DS:DATA,ES:DATA
START:    MOV    AX,DATA
     MOV    DS,AX
     MOV    ES,AX
     MOV    CX,BLENG
     MOV    SI,OFFSET    BLOK1
     MOV    DI,OFFSET    BLOK2
     CLD
     PUSH    SI
     ADD    SI,BLENG-1
     CMP    SI,DI
     POP    SI
     JB    GO
     STD
     ADD    SI,BLENG-1
     ADD    DI,BLENG-1
GO:    REP    MOVSB
     MOV    AH,4CH
     INT    21H
     CODE    ENDS
     END    START
5、找出最大數和最小數
DATA    SEGMENT
BUF    DB    -2,+5,-128
     DB    +127,80,-70
COUN    EQU    $-BUF
MAX    DB    ?
MIN    DB    ?
DATA    ENDS
STACK    SEGMENT    STACK
STR    DB    64H    DUP(?)
STACK    ENDS
MYCODE    SEGMENT
     ASSUME    DS:MYCODE,DS:DATA,SS:STACK
START:    MOV    AX,DATA
     MOV    DS,AX
     MOV    AX,STACK
     MOV    SS,AX
     MOV    SP,LENGTH    STR
     MOV    CX,COUN-1
     MOV    SI,OFFSET    BUF
     MOV    AL,[SI]
     MOV    BL,[SI]
     INC    SI
LOP:    CMP    AL,[SI]
     JGE    NEXT1
     MOV    AL,[SI]
NEXT1:    CMP    BL,[SI]
     JL    NEXT
     MOV    BL,[SI]
NEXT:    INC    SI
     LOOP    LOP
     MOV    MAX,AL
     MOV    MIN,BL
     MOV    AH,4CH
     INT    21H
MYCODE    ENDS
     END    START
6、三路分支結構程序
DATA    SEGMENT
DATX    DB    -3
DATY    DB    ?
DATA    ENDS
CODE    SEGMENT
     ASSUME    CS:CODE,DS:DATA
START:    MOV    AX,DATA
     MOV    DS,AX
     MOV    AL,DATX
     CMP    AL,0
     JGE    BIGER
     MOV    AL,0FFH
     MOV    DATY,AL
     JMP    NEXT
BIGER:    JE    EQUL
     MOV    AL,1
     MOV    DATY,AL
     JMP    NEXT
EQUL:    MOV    DATY,AL
NEXT:    MOV    AH,4CH
     INT    21H
CODE    ENDS
     END    START
7、利用跳轉實現多分支結構
DATA    SEGMENT
ADRTAB    DW    R0,R1,R2,R3,R4,R5,R6,R7,R8,R9
TEN    DB    ?
DATA    ENDS
STACK    SEGMENT    PARA    STACK    'STACK'
STA    DB    100    DUP(?)
STACK    ENDS
CODE    SEGMENT
     ASSUME    CS:CODE,DS:DATA,SS:STACK
START:    MOV    AX,DATA
     MOV    DS,AX
     MOV    AX,STACK
     MOV    SS,AX
     MOV    SP,LENGTH    STA
     MOV    AH,01
     INT    21H
COMPUT:    MOV    AH,0
     AND    AL,0FH
     ADD    AL,AL
     MOV    BX,OFFSET    ADRTAB
     ADD    BX,AX
     MOV    AX,[BX]
     JMP    AX
R0:
R1:
R2:
R3:
R4:
R5:
R6:
R7:
R8:
R9:
     MOV    AH,4CH
     INT    21H
CODE    ENDS
     END    START
8、計算累加和
DATA    SEGMENT
SUM    DW    ?
DATA    ENDS
CODE    SEGMENT
     ASSUME    CS:CODE,DS:DATA
START:    MOV    AX,DATA
     MOV    DS,AX
     MOV    AX,0
     MOV    CX,100
AGAIN:    ADD    AX,CX
     DEC    CX
     JNZ    AGAIN
     MOV    SUM,AX
     MOV    AH,4CH
     INT    21H
CODE    ENDS
     END    START
9、計算一個數中1的個數
DATA    SEGMENT
X    DW    31A0H
RESULT    DW    ?
DATA    ENDS
CODE    SEGMENT
     ASSUME    CS:CODE,DS:DATA
START:    MOV    AX,DATA
     MOV    DS,AX
     MOV    CX,0
     MOV    AX,X
AGAIN:    AND    AX,AX
     JZ    EXIT
     SHL    AX,1
     JNC    NEXT
     INC    CX
NEXT:    JMP    AGAIN
EXIT:    MOV    RESULT,CX
     MOV    AH,4CH
     INT    21H
CODE    ENDS
     END    START
10、求一列數的累加和
DATA    SEGMENT
BLOCK    DW    0028H,0FF18H,1005H,7823H,0
     DW    0CDABH,0FFFFH,1122H,3344H,7892H
COUN    EQU    ($-BLOCK)/2
SUM    DW    ?
DATA    ENDS
STACK    SEGMENT    PARA    STACK    'STACK'
STA    DW    100    DUP(?)
TOP    EQU    SIZE    STA
STACK    ENDS
CODE    SEGMENT
     ASSUME    CS:CODE,DS:DATA,SS:STACK
START:    MOV    AX,DATA
     MOV    DS,AX
     MOV    AX,STACK
     MOV    SS,AX
     MOV    SP,TOP
     MOV    AX,0
     MOV    SI,OFFSET    BLOCK
     MOV    CX,COUN
LOP:    ADD    AX,[SI]
     ADD    SI,2
     LOOP    LOP
     MOV    SUM,AX
     MOV    AH,4CH
     INT    21H
CODE    ENDS
     END    START
11、延時程序
TIMEDLY    PROC
     MOV    BX,100
DELAY:    MOV    CX,5882
DELAYO:    LOOP    DELAYO
     DEC    BX
     JNZ    DELAY
     RET
TIMEDLY    ENDP
12、冒泡排序法
DATASEG    SEGMENT
ARRAY    DW    1234H,5437,7FFFH,0FFFFH,0AB55
     DW    05FFH,7832H,0,9043H,5634
COUN    EQU    ($-ARRAY)/2
DATASEG    ENDS
STACKSEG    SEGMENT    PARA    STACK    'STACK'
STAPN    DB    100    DUP(?)
TOP    EQU    LENGTH    STAPN
STACKSEG    ENDS
PROGRAM    SEGMENT
     ASSUME    CS:PROGRAM,DS:DATASEG,SS:STACKSEG
START:    MOV    AX,DATASEG
     MOV    DS,AX
     MOV    AX,STACKSEG
     MOV    SS,AX
     MOV    AX,TOP
     MOV    SP,AX
     MOV    BL,0FFH
A1:    CMP    BL,0FFH
     JNE    A4
     XOR    BL,BL
     MOV    CX,COUN-1
     XOR    SI,SI
A2:    MOV    AX,ARRAY[SI]
     CMP    AX,ARRAY[SI+2]
     JGE    A3
     XCHG    ARRAY[SI+2],AX
     MOV    ARRAY[SI],AX
     MOV    BL,0FFH
A3:    INC    SI
     INC    SI
     LOOP    A2
     JMP    A1
A4:    MOV    AH,4CH
     INT    21H
PROGRAM    ENDS
     END    START

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久中文字幕电影 | 不卡在线视频 | 免费在线观看一区二区 | 亚洲 欧美 综合 | 午夜资源 | 久久精品一区二区 | 中文字幕视频在线 | 久久精品一 | 国产一区二区免费电影 | 国产精品国产精品国产专区不卡 | 国产精彩视频在线观看 | 中文字幕国产 | 伊人在线视频 | 日本一卡精品视频免费 | 免费一区二区三区 | 欧美成人一级 | 亚洲精品久久久9婷婷中文字幕 | 中文字幕亚洲精品 | 午夜亚洲 | 欧美freesex黑人又粗又大 | 免费黄色录像视频 | 亚洲精品视频一区 | 嫩草视频在线 | 国产无套一区二区三区久久 | 成人av免费 | 日本黄色大片免费 | 日韩一区二区在线播放 | 亚洲成人免费视频在线观看 | 日韩在线视频观看 | 中文字幕一区二区三区乱码图片 | 三级黄色片在线观看 | 99国产精品一区二区三区 | 综合久久综合久久 | 日韩在线看片 | 日韩中文一区 | 国产超碰人人爽人人做人人爱 | 亚洲欧美日韩久久久 | 999免费网站 | 成人激情视频网 | 欧美精品久久久 | 国产人免费人成免费视频 |