emu8086相关内容

如何将8086 emu汇编程序转换为可兼容的linux汇编

我正在编写将十六进制(A-F)转换为十进制的代码.我设法在8086 emu上编写了它,但在Linux上却需要它.我需要帮助. 该代码在8086仿真器n个窗口上绝对可以正常工作.但是我无法将其转换为Linux语法.我对组装的Linux语法不熟悉. 这是我的8686代码. org 100h.model小.堆栈100小时.数据msg1 db'输入一个十六进制数字:$'msg2 db'十进 ..
发布时间:2021-04-23 20:05:11 服务器开发

没有div的ASM 8086分区

我需要在asm 8086中编写类似b = a/6的程序,但没有DIV指令.我知道如何使用SAR,但是只有2,4,8,16 ... mov ax,a sar ax,1 ;//div a by 2 mov b,ax 我的问题是如何将其除以6? 解决方案 给出另一个答案的方法很简单强制循环,对于a的较大值可能需要一段时间.此版本使用较大的块(类似于长除法问题),专门编码以将有符号数除以6: ..
发布时间:2020-11-29 20:10:28 其他开发

程序计算数字列表的总和

我尝试运行此代码,但不知道错误在哪里. include "emu8086.inc" ORG 100 .data ARRAY DB 12H, 24H, 26H, 63H, 25H, 86H, 2FH, 33H, 10H, 35H SUM DW 0 .code START: MOV AX, @DATA MOV DS, AX MOV CL, 10 XOR DI, DI MOV BX, OFFSET ..
发布时间:2020-09-13 01:52:29 其他开发

我的程序集“测验乘"代码不起作用?

这是我的汇编代码.它不工作.. 我试图用另一种方式写它,但这给了我其他错误 我使用emu8086 .....在第一页中将有3页(1,2,3),您必须选择 页面. 1-学习2次考试3次退出 研究:将从0-9开始学习乘法表 考试:有关0-9岁多人的问题 从测验中退出 ,完成测验后将出现标记. multi-segment executable file template. ..
发布时间:2020-09-13 01:51:21 其他开发

如何在emu8086中创建和绘制精灵?

我已经获得了一个任务,需要使用emu8086来创建游戏. 但是问题是我不知道如何绘制精灵. 有人可以通过向我解释精灵创建来帮助我吗? 解决方案 你能告诉我如何使用emu8086吗? 首先,您设置图形视频模式.接下来的代码选择320x200 256色模式: mov ax, 0013h ; AH=00h is BIOS.SetVideoMode, AL=1 ..
发布时间:2020-09-13 01:22:08 其他开发

组装emu8086,反向串

我正在尝试制作一个程序,其中用户必须输入字符串并获得反向输出.此外,应将所有小写字母更改为大写,将大写字母更改为小写.我已经完成了可以输入1个字符的程序.我的下一个目标是要获得尽可能多的字符. 我做了一些研究,并想出了这段代码: org 100h include emu8086.inc .DATA STR1 DB 0DH,0AH, 'Input: $' STR2 DB 0DH, ..
发布时间:2020-09-13 01:13:04 其他开发

使用用户选项更改颜色

我正在使用程序集emu8086在我的项目中工作,我已经做了很多事情: 这是我的代码: title ac-cores-mov-cursor.asm - desenha poligno colorido em modo texto org 100h ; directiva para definição do enderço da 1ª instru ..
发布时间:2020-09-13 01:09:34 其他开发

为什么我的装配体打印在第26行之后不打印字符?

我正在学习Assembly,并成功解决了打印现在我有另一个问题. 我正在使用emu8086.我让这段代码使用带有背景颜色的空格字符以位为单位打印一个奴才的图像.我设法使它每行打印一次图像,但是当它到达第26行时,它停止了打印,并且出现了“错误中断"错误. 任何人都可以帮助我. 这是完整的代码: org 100h name "charchar" org 100h ; ..
发布时间:2020-09-13 01:05:59 其他开发

在用户输入中查找第一个和最后一个大写字母

输入将取自a-z或A-Z,输入以星号*结尾. 我们需要输入字符的第一个和最后一个大写字母作为输出.另外,我们应该显示每次使用的输入. N.B.我们按字符而不是字符串来接受输入. 测试案例1:输入:aAbCcP*输出:AP 测试案例2:输入:ZabCBc*输出:ZB 我在下面编写了这段代码,它满足测试用例1,但不满足2: .MODEL .STACK 100H .DATA ..
发布时间:2020-09-13 00:57:19 其他开发

使用汇编器8086显示表的总和

我正在编写一些代码,使我可以汇总一个表,然后使用汇编语言显示其结果.到目前为止,这是我要提出的: data segment tab db 9 dup(3 5 8 4 7 1 6 7 0) resultat db ? data ends code segment xor di, di mov cx, 9 Prog: mov al, tab[di] ad ..
发布时间:2020-09-13 00:54:00 其他开发

如何检查emu8086中CF标志是否为1?

我试图查找CARRY标志是否为1,但是我不知道如何检查它.我写了下面的代码,但是我需要一些帮助来问问问号. LEA DX, MSG MOV AH, 09H INT 21H MOV AH, 01H INT 21H MOV NUM, AL SHR NUM, 1 CMP ??, 1 JE FINISH FINISH: MOV AH, 4CH INT 2 ..
发布时间:2020-09-13 00:53:47 其他开发

DosBox如何修复字符属性?

我编写汇编代码只是为了编写一个具有蓝色背景和白色前景的字符.它可以在emu8086的模拟器中使用,但是当我在DosBox上打开它时,它不会显示背景色. 使用Emu8086: 使用DosBox: mov ax,0012h int 10h mov ah,9 mov al,31h mov bl,1fh int 10h 解决方案 在图形视频模式下,BIOS功能09h的BL参数仅定义前景 ..
发布时间:2020-09-13 00:00:38 其他开发

汇编基础:输出寄存器值

我刚刚开始学习汇编语言,并且已经被困在零件上以“在屏幕上显示存储在寄存器中的十进制值".我正在使用emu8086,任何帮助将不胜感激! :) .model small ;Specifies the memory model used for program to identify the size of code and data segments org 100h ;allo ..
发布时间:2020-09-12 23:56:22 其他开发

MOV 8位至16位寄存器(AL至BX)

如何解决将8位值移至BX寄存器(16位)的问题? mov al, 10h mov bx, al 为此,我得到: operands do not match: 16 bit and 8 bit register 解决方案 答案取决于是否要对值进行零扩展或符号扩展以及是否可以使用以80386开头的可用指令.为获得更好的性能,如果movzx和movsx可用,则应使用80386或更 ..
发布时间:2020-09-12 23:07:37 其他开发

程序段声明语法

我刚开始使用ASM和x8086架构,但是在emu8086附带的一些示例跟进时,我遇到了某些问题. SSEG SEGMENT STACK 'STACK' DW 100h DUP(?) SSEG ENDS 好的 SSeg ,我想这是一个标签,它是堆栈段, SEGMENT 关键字表明前面是一个段,但是STACK 'STACK'代表什么为了? 在下面,我认为 ..
发布时间:2020-09-12 22:59:13 其他开发

为什么我从mov ax,bx + si + 1得到零?

mov ax,10 mov bx,4 mov si,ax mov ax,bx+si+1 LEA ax,[bx+si+1] 当我将bx,si和1加在一起并移至ax时,结果为0. 在下一行中,当我使用LEA时,它可以工作并得到15. 为什么使用move时我会归零? 解决方案 您的问题是:“为什么我会从mo ..
发布时间:2020-09-12 22:50:48 其他开发

X86 IDIV余数的符号取决于8/-3和-8/3的分红符号?

有人能为我解释为什么在这些情况下其余符号不同吗?这是模拟器错误还是真正的CPU也这样做? 8 / -3 : quotient(AL) = -2 remainder(AH) = 2 -8 / 3 : quotient(AL) = -2 remainder(AH) = -2 解决方案 它应该可以那样工作,尽管通过阅读文档来找出它很麻烦: 非整数结果将被截断(切成零),变成0. ..
发布时间:2020-09-12 22:07:50 其他开发