汇编初学者小问题
时间:2011-08-12
来源:互联网
就是,汇编键盘的输入输出,是不是我可以有三种输入方式,就是dos,bios,还有直接读取端口的方式
求解用这三个方式输入一个字符然后在输出到显示器上,不用太麻烦的程序
多谢了
求解用这三个方式输入一个字符然后在输出到显示器上,不用太麻烦的程序
多谢了
作者: quan958201599 发布时间: 2011-08-12
我的意思是以前我们学习c或者其他的时候都可以从实现简单的输入输出开始,但是对于汇编的输入输出不是很了解,尤其是不知道,在用int 21中断以后,读取的字符放在哪了,是在中断前读取还是中断后读取
作者: quan958201599 发布时间: 2011-08-12
Assembly code
;这段代码的功能是,接受用户输入,但是不回显示,直到按下回车键才回显, 按下0键退出程序 ;汇编方法 ;ml /AT isme2.asm ;link16 /TITY isme2; code segment public assume cs:code, ds:code org 100h start: jmp begin msg1 db 'Type anything,followed by enter; type 0 to quit.',13,10,'$' secret db 256 dup(?) ;输入的字符放在这里 begin: ;设置ds (ds=cs) mov ax,cs mov ds,ax ;显示提示信息 mov dx,offset msg1 mov ah,09h int 21h NewLine: mov cx,253 ;每次回车前,键入的字符数不要超过253个 xor bx,bx nextChar: mov ah,07h ;请求直接控制台输入但不回显 int 21h ;调用DOS cmp al,0dh ;输入的是不是回车符? je disp ;如果是就跳转(显示串) cmp al,30h ;输入的是不是字符0? je quit ;是就退出 mov secret[bx],al ;以上都不是就把输入的字符放进缓冲区,备用 inc bx ;缓冲区指针加1 loop nextChar ;如果cx>0,就再接收下一个 disp: mov secret[bx],13 ;追加回车符 inc bx mov secret[bx],10 ;换行换行符 inc bx mov secret[bx],'$' ;追加结束符 mov dx,offset secret;取缓冲区(这里就是串)的首地址 mov ah,09h ;请求在标准输出设备上显示串 int 21h ;调用DOS jmp NewLine quit: mov ah,00h int 21h code ends end start
作者: gsy999 发布时间: 2011-08-12
[code=Assembly][/code];使用masm5.0进行编译
;程序功能:在屏幕上显示一行字符串.
;注意:使用masm5.0编译asm文件的时候,文件名长度不要超过8个字符,否则会无法打开文件.
assume cs:code
code segment
start:
mov ax,cs
mov ds,ax
mov ah,9
mov dx,offset msg ;ah=9,ds:dx指向由美元标志($,对应于ASCII码24h)终止的字符串.
int 21h ;将字符串输出给标准输出设备(STDOUT)
mov ah,4ch
int 21h
msg db 'hello,world',24h
code ends
end start
这个也能实现显示的功能。
;程序功能:在屏幕上显示一行字符串.
;注意:使用masm5.0编译asm文件的时候,文件名长度不要超过8个字符,否则会无法打开文件.
assume cs:code
code segment
start:
mov ax,cs
mov ds,ax
mov ah,9
mov dx,offset msg ;ah=9,ds:dx指向由美元标志($,对应于ASCII码24h)终止的字符串.
int 21h ;将字符串输出给标准输出设备(STDOUT)
mov ah,4ch
int 21h
msg db 'hello,world',24h
code ends
end start
这个也能实现显示的功能。
作者: haojiahuo50401 发布时间: 2011-08-12
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28