如何实现一个汇编语言实现人机对话

&&&&如何用汇编语言来编写程序
如何用汇编语言来编写程序
汇编语言的使用,如何学习汇编语言,怎样用汇编语言来编写程序
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
VIP下载&&免积分60元/年(1200次)
您可能还需要
开发技术下载排行只需一步,快速开始
后使用快捷导航没有帐号?
查看: 1681|回复: 8
用汇编语言实现从键盘输入一个字,再与零进行比较,然后风别赋予不同的值
签到天数: 73 天[LV.6]常住居民II
谢谢鱼友!
哥们!我刚做了一个你看看行不行
data segment
4输入的最大个数
?实际输入个数
dup('$')存放数据
Please input a number to x
code segment
assume cs:code,ds:data
mov ax,data
lea dx,str1
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 335 天[LV.8]以坛为家I
本帖最后由 大黑鱼 于
18:25 编辑
哥们!我刚做了一个你看看行不行
data segment
& && &&&y0& &&&db& &4& &&&;输入的最大个数
& && &&&len& &db& &?& && &;实际输入个数
& && &&&str0&&db& &5&&dup('$')& & ;存放数据
& && &&&str1&&db '&&Please input a number to x& & $'
& && &&&y4 db ?
& && &&&db '$'
code segment
assume cs:code,ds:data
start :& && &&&mov ax,data
& && &&&mov ds,ax& && &
& && &&&lea dx,str1& && &;显示字符串str1
& && &&&mov ah,09& && &&&;调用DOS 9 号命令
& && &&&int 21h
& && &&&lea dx,y0& && &&&;取y0地址
& && &&&mov ah,0ah& && & ;调用DOS 10号命令
& && &&&int 21h
& && &&&mov al,y0+2
& && &&&cmp al,30h& && & ;0 的ASSIC码值是30h
& && &&&je& &s0& && && & ;当相等时跳转
& && &&&ja& &s1& && && & ;当大于0时跳转
& && &&&mov y4,'1'& && &
& && &&&jmp next
s0:& && &&&mov y4,'2'
& && &&&jmp next
s1:& && &&&mov y4,'3'
& && &&&jmp next
next:& && &&&lea dx,y4
& && && && && & mov ah,09
& && && && && & int 21h
& && && && && & mov ah,4ch& && &;返回操作系统
& && && && && & int 21h
code ends& && && && && & ;代码段结束
这是调用十号命令的
data segment
& && &&&y0& &&&db& &4& &&&;输入的最大个数
& && &&&len& &db& &?& && &;实际输入个数
& && &&&str0&&db& &5&&dup('$')& & ;存放数据
& && &&&y1& & db& &'1 $'
& && &&&y2& & db& &'0 $'
& && &&&y3& & db& &'-1$'
& && &&&str1&&db '&&Please input a number to x& & $'
code segment
assume cs:code,ds:data
start :& && &&&mov ax,data
& && &&&mov ds,ax& && &
& && &&&lea dx,str1& && &;显示字符串str1
& && &&&mov ah,09& && &&&;调用DOS 9 号命令
& && &&&int 21h
& && &&&lea dx,y0& && &&&;取y0地址
& && &&&mov ah,0ah& && & ;调用DOS 10号命令
& && &&&int 21h
& && &&&mov al,y0+2
& && &&&cmp al,30h& && & ;0 的ASSIC码值是30h
& && &&&je& &s0& && && & ;当相等时跳转
& && &&&ja& &s1& && && & ;当大于0时跳转
& && &&&lea dx,y3& && &&&;显示y3
& && &&&mov ah,09& && &&&
& && &&&int 21h
& && &&&jmp next
s0:& && &&&lea dx,y2& && &&&;输出y2
& && &&&mov ah,09
& && &&&int 21h
& && &&&jmp next
s1:& && &&&lea dx,y1& && & ;输出y1
& && &&&mov ah,09
& && &&&int 21h
& && &&&jmp next
next:& && &&&mov ah,4ch& && &;返回操作系统
& && &&&int 21h
code ends& && && && && & ;代码段结束
注意是分别不是风别
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 68 天[LV.6]常住居民II
反正我是不会的。呵呵。
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 278 天[LV.8]以坛为家I
支持楼上的回答!{:2_27:}
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 73 天[LV.6]常住居民II
大黑鱼 发表于
哥们!我刚做了一个你看看行不行
data segment
& && &&&y0& &&&db& &4& &&&;输入的最大个数
牛逼,掉渣天了有木有。
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 31 天[LV.5]常住居民I
这样也可以吗?
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 98 天[LV.6]常住居民II
不这样那怎样!
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 110 天[LV.6]常住居民II
强烈支持,欢迎{:1_1:}
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
签到天数: 15 天[LV.4]偶尔看看III
这些书写格式是在第几章里啊
如果您的【问题求助】得到满意的解答,请自行将分类修改为【已经解决】;如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】鼓励;善用【论坛搜索】功能,那里可能有您想要的答案!
•••(
Powered by想请教一下大家,能否用其他语言,如c/c++,java,python等语言去实现汇编语言中的指令集?如果可以的话,大概要有些什么基础;具体操作过程中,要去实现汇编语言的哪些方面的功能?
这个显然有现成的成品。我一般都用qemu里面的代码。但现实总要求我对这些代码做出裁剪和修改,不知道有没有违反GNU licence。既然用了qemu的代码,那么我假设环境就是C/C++。首先机器码是有作用对象的,他们是显示的操作数或者是隐式的其他位置。操作数是指定的寄存器或者是内存位置。隐式的位置就是指令上面看不到的效果。有些效果是有文档记录的,比如tst指令会影响到FLAG寄存器。有些是没有文档记录的,比如cpu的cache。这些事情qemu的实现的代码都会对定义的上下文结构进行修改。上下文结构肯定包括CPU所有的寄存器,另外可以根据需要可以干掉没有文档记录的副作用的记录。因此这个上下文结构你可以直接使用qemu的定义,这样做会导致你依赖几乎左右的qemu代码,包括寻址部分和cacheline的实现部分;或者使用自己定义的,可以裁减你不需要的文档未记录功能,但需要自己实现寻址部分。寻址功能就是找到某段内存位置。比如x86的机器码汇编mov $0x1234, %rax。需要你找到0x1234代表的内存位置。实际的实现可能是return &base[0x1234];
已有帐号?
无法登录?
社交帐号登录君,已阅读到文档的结尾了呢~~
广告剩余8秒
文档加载中
编写一个汇编语言程序
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
编写一个汇编语言程序
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口}

我要回帖

更多关于 汇编语言实现乘法 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信