emu8086

    1热度

    2回答

    我正在处理程序集8086中的任务,我得到了错误的答案;谁能猜到我的问题是什么?我要乘一个字字节....这里是我的代码: STSEG SEGMENT DB 64 DUP(?) STSEG ENDS ;-------- DTSEG SEGMENT D1 DW 6454H D2 DB 44H REPLY DW 2 DUP(?) DTSEG END

    0热度

    2回答

    如果在键盘3输入这将是3 +和键入另一个号码3这将是3 = 3 + 3 = 6 我在新这个问题和它我很难理解这一点,请帮助我,谢谢你提前 诠释21H/0AH 数据 - > AL 1寄存器 2日注册的Al 新增第1个寄存器,第二个寄存器 注册 铝 打印

    0热度

    1回答

    即时尝试使用int 21h啊是40h,但我似乎无法得到它的工作,当我打开我的文件后,程序关闭它只是不写在它并没有输出....任何想法,为什么发生这种情况?我在该行一个侧面说明从该代码中的bug了,之前它工作完全正常..... ;multi-segment executable file template. .model small assume cs: code, ds: data dat

    4热度

    1回答

    我尝试编写一个汇编代码来确定28是否是完美数字。但我有一个问题。当我运行代码时,emu8086无法识别我的标签。 例如,在此代码: mov dl,1ch mov bl,00h ;sum mov cl,1ch ;counter dec cl HERE : mov ax,00h mov al,dl div cl ;ax/dl ah=remainder cmp ah,00h je SU

    0热度

    1回答

    当我在我的2个变量上输入数字时,我认为它没有读取它,所以mov有0值。 没问题编译。 这里是我的代码: include 'emu8086.inc' org 100h define_print_string define_scan_num define_print_num define_print_num_uns define_clear_screen .model s

    3热度

    1回答

    以下是我的代码。 hex2dec中的块可成功将单个十六进制数转换为十进制数。如果有人能够指出我在使用阵列时出错的地方,那将会非常有帮助。谢谢。 DATA SEGMENT NUM DW 1234H,9H,15H RES DB 3*10 DUP ('$','$','$') SIZE DB 3 DATA ENDS CODE SEGMENT ASSUME DS

    0热度

    1回答

    这是我的代码; org 100h mov cx,5 loop1: call DISPLAY dec cx cmp cx,0 ja loop1 jmp Exit DISPLAY proc MOV AH,09 MOV DX, offset SCREEN INT 21h RET DISPLAY ENDP Exit:

    1热度

    1回答

    这是8086样本汇编语言代码打印字符串以相反的顺序 .model small .STACK 100H .DATA MSG DB 'HELLO!$' .CODE MOV CL,0 AGAIN: MOV DL,DS:[SI] ; MOV AH,2 ; INT 21H INC CL INC SI CMP DL,'$' JNE AGAIN DEC SI DEC CL

    0热度

    1回答

    我用魔杖可以打印出与用户输入值一样多的星号,但是当我打印一个换行符时,如果没有打印换行符,我的循环无法正常工作我的代码工作正常。 为什么发生这种情况我不明白。 .model small .stack 100h .data msg1 db "How many star do you want to print: $" newline db 10,13,"$" .code

    -2热度

    1回答

    我想创建一个函数,获取一个参数在十六进制和char *,我试图将该参数转换为字符串,然后将其附加到char *。 这是我的代码: wordToString PROC push bp mov bp,sp xor cx,cx mov bx, 10 loop1: mov dx, 0 mov ax, [bp+6]