tasm

    3热度

    1回答

    我想输出一个字符串而不使用$符号。无论我是否正确,我需要计算我的字符串的字符并将值存入cx寄存器。 我试图这样做,但程序只是打印出整个缓冲区而不是我需要的字符串。 这是Turbo汇编程序,顺便说一句。 .model small .stack 200h .data text1 db 0ah, 0dh, 'Your text : $' tex

    0热度

    1回答

    1) 所以,我有这样的汇编代码在.ASM文件,基本上它做类似 BEGIN X:=2; Y:=2+X; Z:=Y; IF(Z > X) THEN WRITELN("VALOR DE Z"); WRITELN(Z); ELSE WRITELN("VALOR DE X"); WRITELN(X); END; END programa1. ASM这里: ;/StartHe

    2热度

    2回答

    我一直在做一个程序,我需要将某个寄存器的值与特定的数值进行比较。虽然模拟的emu8086我没有troble,但是TASM编译器给了我错误的所有行这样: cmp bx, 0xF7F0h 错误看起来是这样的: ***Error*** div.ASM(163) Illegal number 任何想法如何解决这个问题? 当然,我可以将F7F0h的值放入另一个寄存器或变量中,但我更愿意将它保持为一个

    3热度

    1回答

    我的程序有目的:从命令行读取符号,并将它们用作完整路径名转到另一个目录。 这个程序的工作原理是,如果不是从命令行输入符号,我将缓冲区定义为“P:\ test \”,所以问题出在读字符。 但是,我试图通过使用:ah 02h int 21h(单字符输出)打印出我的缓冲区,并将其正确输出。 .model small .stack 100h .data dir db 255 dup (0) .co

    -4热度

    1回答

    DATA segment msg1 db 0dh, 0ah, "ENTER A CHOICE $"; msg2 db 0dh, 0ah, "1.Addition $"; msg3 db 0dh, 0ah, "2.Subtraction $"; msg4 db 0dh, 0ah, "3.Exit $"; msg5 db 0dh, 0ah, "Ente

    -2热度

    1回答

    我组装的老师没有解释这么好,所以我不知道如何读一个字符,并从ASCII表打印十六进制数字该字符 (例如A-> 61 A-> 41 0-> 30) 但是我发现这对计算器 .model small .stack 100h .data texto db 'Enter: $' maximo db 9 caractereslidos db 0 string db 9 DUP (0) nova

    0热度

    1回答

    因此,我正在用TASM在DOS下编写Borland C中的程序。程序应该切换s.c. “任务”(或过程)直到完成,并且切换功能应该通过按键操作(getch)来操作,并且这个getch应该被写入TASM中,并插入到C++中。那么,TASM中是否有getch()模拟?

    -2热度

    1回答

    打印有一些问题。如果我使用美元终止的字符串,它工作正常。但是现在我想通过char打印char,直到找到零终止符。不幸的是,我得到一个无限循环,只是打印第一个字符而没有其他东西。 .model small .stack 100h .data input db 40 dup (?) filename db 40 dup(?) .code main:

    1热度

    1回答

    我是新来的汇编语言,我有一个问题。我正在尝试使用TASM(DOS)编写基本的汇编程序,根据操作结果打开一些LED。我的所有业务都运作,除了部门。当我进行分区时,只有第一个LED亮起,这意味着二进制结果为1。如果我为第一个数字输入4,第二个数字输入2,结果应该是2.第二个LED应该不是第一个。为什么我的部门工作不正常? 这是代码: .model small .stack 64 .data N

    1热度

    1回答

    帮我修复我的程序。程序必须在目录中显示隐藏文件,但它不起作用。当CX = 2计划也表明,没有隐藏文件: .model tiny .code org 100h ; СОМ-file start: push cs ;cs=ds pop ds mov ah, 9 ;show message on screen lea dx, msgpathrequest int 21h