0

我需要有关此汇编语言程序的帮助,因为这是我第一次尝试编写程序但我不知道如何开始。这是问题

编写一个汇编语言程序,允许用户输入年数(从 1 到 30),然后告诉用户在该年数中有多少个月、多少周、多少天、多少小时和多少分钟。示例 1:输入:年数:1 输出:月:12 周:52 天:365 小时:8760 分钟:525600

我从我们的实验室手册中得到了这个,我尝试自己制作 tasm,但它是错误的并且无法正确执行。这是第一个练习,但我不知道如何开始这个结构。我是编程的初学者,我想在这个程序中变得更好。谢谢你,对不起,我的英语不好。

4

1 回答 1

0

使用调试器确定适当的缺失值。

使用编辑器输入结果。手写结果是不可接受的。

TITLE  CS14PGM1:  DEBUGGER
        ; MY NAME IS (your name here).
        .MODEL  SMALL
        .STACK  100H
        .DATA
xx          db  0E5h
xx1         db  74h
yy          dw  0BB33h
A           DW   5599h
B         DW     -37
MESSAGE DB      '98765'
        .CODE
MAIN        PROC
        MOV    AX,  @DATA
        MOV      DS,   AX
        MOV    AX,  A
        MOV     AX,  0AABAH
        MOV     AL,   MESSAGE
        MOV     AX,   0AABAH
        MOV     AL,    BYTE  PTR  A
        MOV     AX,   WORD  PTR  xx1
        LEA     AX,   MESSAGE
        MOV     AX,   1237H
        MOV     AX,   B
        MOV     AX,   5234H
        MOV     AL,   -23
        MOV     BYTE  PTR  A,  -23
        MOV     A,   -23
        mov     al, byte ptr xx+1      ;  ax=
        mov     bl, byte ptr yy+1      ;  bx=
        mov     cx, word ptr  xx     ;  cx=
        mov     byte ptr xx, 0AAh      ;  xx=
        mov     byte ptr xx+1, 0BBh    ;  xx1=
        mov     word ptr xx, 0CCDDh    ;  xx=    xx1=
        mov     byte ptr yy, 22h       ;  yy=
        mov     byte ptr yy+1, 33h     ;  yy=
        mov     word ptr xx+1, 4455h   ;  xx=    xx1=    yy=
        mov     word ptr xx1,  0099h   ;  xx=    xx1=    yy=
        mov     word ptr a+1, 1234h    ;  A=       B=

        MOV     AX,  4C00H
        INT     21H
MAIN     ENDP
END      MAIN
于 2014-11-26T16:13:48.420 回答