| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1015 人关注过本帖
标题:怎么修改啊?
只看楼主 加入收藏
mrcsjie
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-10-4
收藏
 问题点数:0 回复次数:4 
怎么修改啊?
DATA SEGMENT
BDAT DW 0001101000101011B
DATA ENDS
STACK SEGMENT PARA STACK'STACK'
DB 10 DUP(?)
STACK ENDS
CODE SEGMENT
MAIN PROC FAR
ASSUME CS:CODE,DS:DATA
START:PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DATA
MOV DS,AX
MOV BX,BDAT
MOV CH,4
LP:MOV CL,4
ROL BX,CL
MOV AL,BL
AND AL,0FH
ADD AL,30H
CMP AL,3AH
JL LP1
ADD AL,7
LP1:MOV DL,AL
MOV AH,2
INT 21H
DEC CH
JNZ LP
RET
MAIN ENDP
CODE ENDS
END START




以上程序是把二进制数转换为十六制数,若要将其转换为十进制数应该如何修改呢?请把原程序po出来,谢谢了!
搜索更多相关主题的帖子: 汇编程序 
2008-10-16 18:33
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
转10进制就得用除法了……
2008-10-16 19:14
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
;MASMPlus 代码模板 - 纯 DOS 程序

.model small
.stack 200h
.data
    bdata  dw 0001101000101011B
    buffer db 4 dup(' '),'$'
.CODE
START:
    mov ax,@data
    mov ds,ax
    xor dx,dx
    mov ax,WORD ptr [bdata]
    mov cx,10d
    lea di,buffer
    add di,4
loop1:
    div cx
    add dl,30h
    mov BYTE ptr ds:[di],dl
    xor dx,dx
    dec di
    or ax,ax
    jnz loop1
    int 3h
    mov ax,4c00h
    int 21h
END START

Debug32 - Version 1.0 - Copyright (C) Larson Computing 1994

CPU = 686, Virtual 8086 Mode, Id/Step = 06FD, A20 enabled
-g
AX=0000  BX=0000  CX=000A  DX=0000  SP=0200  BP=0000  SI=0000  DI=000A
DS=208C  ES=207A  SS=208D  CS=208A  IP=0022  NV UP DI PL ZR NA PE NC
208A:0022 CC               INT     3
Instruction Breakpoint
-d ds:0
208C:0000 75 F2 CC B8 00 4C CD 21-2B 1A 20 36 36 39 39 00  urL8.LM!+. 6699.
208C:0010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
***Duplicate Line(s)***
208C:0070 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00  ................
2008-10-16 19:58
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
偶直接给你写了个新的 呵呵

这个其实就是除10取余 只不过 10进制要用除法 16进制可以用移位

对dos输出不熟 偶就写个算法 输出你自己弄吧

突然发现偶的机子没debug 郁闷!!!
2008-10-16 20:02
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
下面那是运行后的结果 不知道怎么输出好 就这么看吧

其他数据没试……
2008-10-16 20:03
快速回复:怎么修改啊?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027143 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved