社区
汇编语言
帖子详情
急!!
houximing001
2003-12-12 02:29:25
十六进制数转化成ascii码程序
请写源代码,急!
...全文
64
3
打赏
收藏
急!!
十六进制数转化成ascii码程序 请写源代码,急!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
波尔多1
2003-12-14
打赏
举报
回复
源程序:
data segment
a db 2bh
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov al,a
mov cl,4
shr al,cl
call tran
mov ah,02h
int 21h
mov al,a
and al,0fh
call tran
mov ah,02h
int 21h
mov dl,'h'
int 21h
mov ah,4ch
int 21h
tran proc
cmp al,10
jae add37
add al,30h
jmp next
add37: add al,37h
next: mov dl,al
ret
tran endp
code ends
end start
紫郢剑侠
2003-12-12
打赏
举报
回复
屏幕输出十进制的一个宏定义
作者:JennyVenus()
作者网站:
文章源自:csdn论坛 http://www.csdn.net
收藏日期:2003-09-23
DOSSEG
.MODEL SMALL
.DATA
.STACK
.CODE
BEGIN:
MOV AX,0
NEXT:
PRINTVAL AX
INC AX
CMP AX, 10000
JB NEXT
EXIT:
MOV AH,4CH
INT 21H
END BEGIN
这个是主程序,应该不太难懂吧。就是调用了PRINTVAL这个宏来实现打印一个寄存器或者内存的值。
而PRINTVAL宏的作用就是在屏幕上输出一个无符号的整形数。
PRINTVAL MACRO X
LOCAL PRINTTEMP2,PRINTT1,PRINTT2,PRINTT3,PRINTT4,PRINTT5 ;局部标号
PUSH AX ;保存堆栈
PUSH BX
PUSH CX
PUSH DX
MOV AX,X ;把要打印的数据放在AX中
MOV BX,10 ;被除数放在BX中,被除数=10
MOV DX,0 ;余数放在DX中
MOV CX,5 ;一个整形数最多5位,所以循环5次
PRINTTEMP2:
DIV BX ;DX:AX / BX, 结果放在AX中,余数放在DX中,如果DX:AX = 5678
;那么现在DX = 8 AX = 567
PUSH DX ;把8放入堆栈
MOV DX,0 ;设置DX:AX = 567;否则除数就会变得更大而出现错误
LOOP PRINTTEMP2 ;循环五次,这样堆栈里面分别放入 8 7 6 5 0 五个数
POP AX ;弹出最高位,目前是0
MOV BH,AL ;放在BH中 BH = 0
POP AX
MOV BL,AL ;BL = 5
POP AX
MOV CH,AL ;CH = 6
POP AX
MOV CL,AL ;CL = 7
;POP AX
;PUSH AX
CMP BH,0 ;如果BH不等于0那么打印他 -- 不大印第一个0
JA PRINTT1
CMP BL,0 ;如果BL不等于0那么打印他 -- 打印5
JA PRINTT2
CMP CH,0 ;如果CH不等于0那么打印他 -- 打印6
JA PRINTT3
CMP CL,0 ;如果CL不等于0那么打印他 -- 打印7
JA PRINTT4
JMP PRINTT5 ;最后一个是0也得打印。后面的调用中断打印字符,不用说了。
PRINTT1:
MOV DL,BH
ADD DL,30H
MOV AH,02H
INT 21H
PRINTT2:
MOV DL,BL
ADD DL,30H
MOV AH,02H
INT 21H
PRINTT3:
MOV DL,CH
ADD DL,30H
MOV AH,02H
INT 21H
PRINTT4:
MOV DL,CL
ADD DL,30H
MOV AH,02H
INT 21H
PRINTT5: POP AX
MOV DL,AL
ADD DL,30H
MOV AH,02H
INT 21H
MOV DL,10
INT 21H
MOV DL,13
INT 21H
POP DX
POP CX
POP BX
POP AX
ENDM
hcj2002
2003-12-12
打赏
举报
回复
up
^_^
2011年专升本计算机试题及答案__
急
转啊!!!.pdf
2011年专升本计算机试题及答案__
急
转啊!!!.pdf
convert类
急
啊!!!
windows7声卡驱动修复压缩包
最近有人说下不了,我看了一下,能下载,多尝试几次~!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 找来一个很有用的声卡驱动解决方案,是我尝试了n次(不下20)还搭上某人的辛苦劳动,才成功让我的Win7发出声音的!!!以下是引用本站“实话实说”的博客。。。 你看到这篇文章时候估计你快被windows7无法安装声卡驱动而崩溃了,呵呵,别
急
,这篇文章是你的救星,本人已经试验多台电脑,完美解决windows7声卡驱动安装失败这一问题 有个前提,你已经有适合自己机子声卡驱动就是总是安装失败,若没有声卡驱动可以用驱动人生(或者其他驱动检测设备)检测并下载适合自己的驱动以备下一步使用。 闲话少说,正文: 1.先下载解压 windows7声卡驱动修复 压缩包。 2.打开你系统的所在盘进入Windows-system32-Driverstore-FileRepository在里面找到wdmaudio.inf_x86_neutral_aed2a4456700dfde文件夹. 一个一个慢慢找吧别着
急
. 4.再进入(wdmaudio.inf_x86_neutral_aed2a4456700dfde)文件夹把里面的东西全删了(删不掉,因为需要管理员权限 ,用windows7 优化大师 -->系统设置--->又键设置--->获取管理员权限(文件\文件夹)--应用到系统,然后对删不掉的文件点右键 --获取管理员权限---删除) 5.回到你刚刚解压的文件夹 6.把里面文件全部复制粘贴到wdmaudio.inf……文件夹里面 7.重新安装声卡驱动. 8.重启ok 问题解决了 如果没有WIN7驱动程序,用vista的也可以
请输入30名同学的c语言成绩,求大神帮忙做这几道结构体的c语言!今天就要交实验报告!
急
啊
急
!!!!! (1)一个班级共有30名学...
问题描述:求大神帮忙做这几道结构体的c语言!今天就要交实验报告!
急
啊
急
!!!!! (1)一个班级共有30名学求大神帮忙做这几道结构体的c语言!今天就要交实验报告!
急
啊
急
!!!!!(1)一个班级共有30名学生,请输入这30名学生的学号、姓名、所属院系、出生日期、高等数学(4学分)成绩、c语言(5学分)成绩、大学英语(3学分)成绩;(2)请输出这30名学生的信息:学号、姓名、出生日期、高等数学成绩、c...
c语言结构体实验报告加注释,求大神帮忙做这几道结构体的c语言!今天就要交实验报告!
急
啊
急
!!!!! (1)一个班级共有30名学...
问题描述:求大神帮忙做这几道结构体的c语言!今天就要交实验报告!
急
啊
急
!!!!! (1)一个班级共有30名学求大神帮忙做这几道结构体的c语言!今天就要交实验报告!
急
啊
急
!!!!!(1)一个班级共有30名学生,请输入这30名学生的学号、姓名、所属院系、出生日期、高等数学(4学分)成绩、c语言(5学分)成绩、大学英语(3学分)成绩;(2)请输出这30名学生的信息:学号、姓名、出生日期、高等数学成绩、c...
汇编语言
21,499
社区成员
41,617
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章