assembly - 在 16 位汇编中将 ASCII 字符显示为数字
问题描述
我正在尝试编写一个程序来获得 3 个值的总和并获得平均值。到目前为止,我能够通过从总和中减去某个值来“正确”地得到总和,以获得总和的前导数。从总和中减去 27h/29 可能不是最有效的方法。我知道这可能不是最佳解决方案,但使用除法会给我一些错误并显示一些随机符号,如在我变成评论的块上看到的那样。
TITLE Add (sum.asm)
; This program adds 8-bit values
.model small
.stack 100h
.data
ThreeBytes db 10h, 20h, 30h ;expected sum is 60h or 96d
message db 0ah, 0dh,"Sum = "
TheSum db ?, 0ah, 0dh, "$"
.code
main PROC
mov ax, @data
mov ds, ax
mov al, ThreeBytes
add al, ThreeBytes + 1
add al, ThreeBytes + 2
;sub al, 40
; mov ch, 0
; mov ch, al
; mov bl, 10
; div bl
sub al, 27h ;or 39d to get 9
mov TheSum, al ;output is ' (apostrophe) = 60h or 96d
mov dx, offset message
mov ah, 9
int 21h
mov ax, 4C00h
int 21h
main endp
end main
我是一个完整的初学者,对汇编语言知之甚少,所以我希望有一个简单的解决方案/解释。上面的代码是我找到的不同程序的组合,它确实有效。
解决方案
推荐阅读
- reactjs - JSX 没有返回预期的 HTML
- file - 检查目录中是否存在重复文件的批处理脚本
- python - 为什么将字符串添加到列表时,增强赋值的行为会有所不同
- java - @OneToOne JPA 休眠无法确定类型
- c# - 在 POST 之前从视图中收集值
- javascript - Angularjs Scope变量对象未在单选按钮控制器中初始化
- sql - 将多个表中的数据合并到一个列中
- python - 了解 scipy.ndimage.filters.convolve 函数
- ios - UIButton initWithFrame:CGRectMake 在 Xcode 9.3 中不起作用
- php - 在 Windows 上为 Laravel 设置 Xdebug