用汇编语言将带符号十进制数据的ASCII码串转换为二进制补码表示怎么做?

用汇编语言将带符号十进制数据的ASCII码串转换为二进制补码表示怎么做?
主要是不懂带符号十进制数据的ASCII码串在内存中是如何存储的。
这是原题:“编写程序,将两个带符号十进制数据的ASCII码串转换为二进制补码表示的数据,计算两数之和,并将结果在屏幕上显示出来。数据范围如果产生溢出,则在屏幕上显示字符串“overflow”。”
271869595 1年前 已收到1个回答 举报

guoguo841231 幼苗

共回答了18个问题采纳率:100% 举报

; 本程序在MASMPlus 1.2集成环境下通过编译,经过调试,运行正确。
Code Segment
Assume CS:Code,DS:Code
; -------------------------------------
; 功能:显示指定地址(Str_Addr)的字符串
; 入口:
; Str_Addr=字符串地址(要求在数据段)
; 用法: Output Str_Addr
; 用法举例:Output PromptStr
Output MACRO Str_Addr
lea dx,Str_Addr
mov ah,9
int 21h
EndM
; -------------------------------------
Number dw 3578
Press_Key db 7,13,10,13,10,'The complated. Press any key to exit...$'
Start: push cs
pop ds
push cs
pop es ;使数据段、附加段与代码段同段
mov ax,Number
mov cx,16
Disp_Binarry: mov dl,'1'
shl ax,1
push ax
mov ah,2
jc $+4
mov dl,'0'
int 21h
pop ax
loop Disp_Binarry
; -------------------------------------
Exit_Proc: Output Press_Key ;提示操作完成,按任意键结束程序
mov ah,1
int 21h
mov ah,4ch ;结束程序
int 21h
Code ENDS
END Start ;编译到此结束

1年前

7
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.059 s. - webmaster@yulucn.com