zoukankan      html  css  js  c++  java
  • masm与nasm的搭建使用

    nasm kali中apt install nasm即可

    masm:

    参考这两篇文章

    文章一:https://www.cnblogs.com/dgwblog/p/11865850.html

    文章二:https://www.cnblogs.com/zzu-general/p/7853822.html

    masm:windows

    nasm:linux

    要注意nasm和masm的语法不一样,masm的asm文件不能用nasm编译。

     把asm文件放入masm文件夹中

    在dosbox中完成挂载,输入masm回车

    输入你要编译的asm文件

    xxx.asm

    再进行链接如图过程,最后运行exe

    DATA1 SEGMENT
    MES DB 'Show abcdef as hex:',0AH,0DH,'$'
    SD DB 'abcdef'
    COUNT EQU $-OFFSET SD
    DATA1 ENDS
    CODE SEGMENT
    ASSUME CS:CODE,DS:DATA1
    START:
    MOV AX,DATA1
    MOV DS,AX
    MOV DX,OFFSET MES ;显示提示信息 问题1,如果用es就会乱码
    MOV AH,09H
    INT 21H
     MOV AH,4CH ;返回DOS
     MOV CX,COUNT
    MOV SI,OFFSET SD
    KUBOPIY:
    MOV AL,DS:[SI]
     AND AL,0F0H ;取高4 位
     PUSH CX
    MOV CL,4
     SHR AL,CL
     POP CX
     CMP AL,0AH ;是否是A 以上的数
     JB C2
     ADD AL,07H
    C2: ADD AL,30H
     MOV DL,AL ;显示字符
     MOV AH,02H
     INT 21H
     MOV AL,DS:[SI]
     AND AL,0FH ;取低4 位
     CMP AL,0AH
     JB C3
     ADD AL,07H
    C3: ADD AL,30H
     MOV DL,AL ;显示字符
     MOV AH,02H
     INT 21H
    INC SI
    LOOP KUBOPIY
    MOV AH,4CH ;返回DOS
    INT 21H
    CODE ENDS
    END START

     

    DATA SEGMENT
    MESG1 DB ' N1<=X<=N2 $ '
    MESG2 DB ' X<N1 $ '
    MESG3 DB ' X>N2 $ '
    N1 EQU 22
    N2 EQU 88
    DATA ENDS
    CODE SEGMENT
    ASSUME CS:CODE, DS:DATA
    BEG: MOV AX,DATA
    MOV DS,AX
    MOV DX,OFFSET MESG1
    MOV AH,1 ;键盘输入字
    INT 21H
    CMP AL,N1
    JAE NEXT ;X ≥ N1 转
    MOV DX,OFFSET MESG2
    JMP DISP
    NEXT: CMP AL,N2
    JBE DISP ;X ≤ N2 转
    MOV DX,OFFSET MESG3
    DISP: MOV AH,09H
    INT 21H ;显示结果信息
    MOV AH, 4CH
    INT 21H ;返回DOS
    CODE ENDS
    END BEG

     

  • 相关阅读:
    javascript命名规范
    angularjs指令参数transclude
    angular中的compile和link函数
    angularjs中的directive scope配置
    sublime text3同时编辑多行
    jquery中on/delegate的原理
    defered,promise回顾
    导航栏滚动到顶部后固定
    angularjs揭秘
    $stateParams
  • 原文地址:https://www.cnblogs.com/kubopiy/p/13965216.html
Copyright © 2011-2022 走看看