试图获得3个2位数字NASM x86的平均值

时间:2017-08-28 08:31:31

标签: nasm

我已经看过其他类似的问题了,我已经尝试了所提到的解决方案,但我的代码根本不起作用。它获得三个2位数字并加上它,除以3得到平均值并打印出来。最初它使用数字之和< 255,现在我试图让它适用于案例> 255.使用此代码,我在终端中获得了浮点异常(核心转储),我不知道为什么。

LoadFrom

编辑:我的声明

; i have successfully scanned, converted and joined the 3 numbers as n1o, n2o, n3o

; add to al, then ax
    mov ax, 0

    add al, [n1o]
    add al, [n2o]
    add ax, [n3o]   ; to prevent loss of sum > 255
    ; will this work?

; average
    mov bl, 3
    div bl          ; divide ax by 3

; split
    mov ah, 0       ; clear remainder of average
    mov bl, 10
    div bl

; assign to a1
    mov [a1t], al
    mov [a1o], ah

; convert a1

; print a1

; terminate

0 个答案:

没有答案