【汇编】MASM6.15几个简单的汇编程序
/***************通过调用(INT 21H)表中的01h号功能号从键盘输入一个字符并回显到视频显示器上*****************/
DATAS SEGMENT ;此处输入数据段代码 DATAS ENDS STACKS SEGMENT ;此处输入堆栈段代码 STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX ;此处输入代码段代码 MOV AH, INT 21H MOV AH,4CH INT 21H MOV AH,4CH INT 21H CODES ENDS END START
/***************输入姓名学号换行显示*****************/
DATA SEGMENT
STRING DB 'xingming',0DH,0AH,'xuehao','$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
BEGIN:
MOV AX,DATA
MOV DS,AX
MOV AH,09H
LEA DX,STRING
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END BEGIN
/***************输入一个字母显示下一个字母*****************/
Code Segment
Assume CS:Code,DS:Code
KBEsc equ 1BH
PromptStr DB 'Please input a letter(Esc to exit): $'
Start: push cs
pop ds ;使数据段与代码段同段 Begin: lea dx,PromptStr
mov ah,
int 21h
mov ah,
int 21h
cmp al,KBEsc
jz Exit_Proc
mov cx,
mov dl,al
mov ah,
Disp_Chr: inc dl
int 21h
loop Disp_Chr
mov dl,
int 21h
mov dl,
int 21h
jmp Begin Exit_Proc: mov ah,4ch ;结束程序
int 21h
Code ENDS
END Start ;编译到此结束
/***************8位16进制加法*****************/
DATA SEGMENT
STRING DB 'The result of 13579BDFH + 02468ACEH is:','$'
XL DW 9BDFH
XH DW 1357H
YL DW 8ACEH
YH DW 0246H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET STRING ;显示信息
MOV AH,09H
INT 21H
MOV AX,XL
ADD AX,YL ;Y低位数值与X低位数值相加
MOV BX,AX ;BX中存放结果的低16位
MOV AX,XH
ADC AX,YH ;Y高位数值与X高位数值相加
MOV CX,AX ;CX中存放结果的高16位
;显示结果
MOV DH,CH
CALL SHOW
MOV DH,CL
CALL SHOW
MOV DH,BH
CALL SHOW
MOV DH,BL
CALL SHOW
MOV AX,4C00H
INT 21H
SHOW PROC NEAR
PUSH DX
PUSH AX
MOV AL,DH
AND AL,0F0H
MOV DL,CL;必须把cl暂存dl里,否则下次对clcall show时会把cl变为4,而不是原来存的数
MOV CL,
SHR AL,CL
MOV CL,DL
CMP AL,0AH
JB C2
ADD AL,07H
C2: ADD AL,30H
MOV DL,AL;show character
MOV AH,02H
INT 21H
MOV AL,DH
AND AL,0FH;取低4位
CMP AL,0AH
JB C3
ADD AL,07H
C3: ADD AL,30H
MOV DL,AL;show character
MOV AH,02H
INT 21H
POP AX
POP DX
RET
SHOW ENDP
CODE ENDS
END START
【汇编】MASM6.15几个简单的汇编程序的更多相关文章
- 汇编实验15:安装新的int 9中断例程
汇编实验15:安装新的int 9中断例程 任务 安装一个新的int 9中断例程,功能:在DOS下,按下“A”键后,除非不在松开,一旦松开后,就显示满屏幕的“A”,其他键照常处理. 预备知识概要 这次实 ...
- MASM6.15汇编程序例子
/***************通过调用(INT 21H)表中的01h号功能号从键盘输入一个字符并回显到视频显示器上*****************/ DATAS SEGMENT ;此处输入数据段代 ...
- Linux汇编教程02:编写第一个汇编程序
学习一门语言,最好的方式就是在运用中学习,那么在这一章节中,我们开始编写我们的第一个汇编程序.当然作为第一个程序,其实十分的简单,但可以给大家一个基本的轮廓,了解汇编大概是这样的. 我们这个程序实际上 ...
- 4.15 每周作业 —— 简单DP
免费馅饼 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submissi ...
- Java学习笔记 11/15:一个简单的JAVA例子
首先来看一个简单的 Java 程序. 来看下面这个程序,试试看是否看得出它是在做哪些事情! 范例:TestJava.java // TestJava.java,java 的简单范例 public ...
- ROS2学习之旅(15)——编写简单的服务和客户节点(C++)
当节点使用服务进行通信时,发送数据请求的节点称为客户节点,响应请求的节点称为服务节点.请求和响应的结构由.srv文件决定. 本文的例子是一个简单的整数加法系统:一个节点请求两个整数的和,另一个节点响应 ...
- 使用BAT编译,链接,执行汇编代码
大家都知道汇编程序(MASM)的上机过程,先要对源代码进行汇编. 连接,然后再执行,而这中间有很多环节需要输入很多东西,麻烦的很(只有经历过的朋友才懂得).如何使这个过程变的简单呢?在我们搞汇编课程设 ...
- GCC内联汇编入门
原文为GCC-Inline-Assembly-HOWTO,在google上可以找到原文,欢迎指出翻译错误. 中文版说明 由于译者水平有限,故译文出错之处,还请见谅.C语言的关键字不译,一些单词或词组( ...
- X86 寻址方式、AT&T 汇编语言相关知识、AT&T 与 Intel 汇编语言的比较、gcc 嵌入式汇编
注:本分类下文章大多整理自<深入分析linux内核源代码>一书,另有参考其他一些资料如<linux内核完全剖析>.<linux c 编程一站式学习>等,只是为了更好 ...
随机推荐
- 【MFC Programming】 Using Dialog To Set A Correlate Menu
This blog will show how to display a menu we designed in a dialog. 1.Insert a new dialog& a new ...
- textarea 提交到数据库的内容,输出到 html 中显示正常的格式
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Office 2003的卸载 与 Office 2013 的安装
一.Office 2003的卸载 软件:卸载Office2003.msi 运行该软件,等待几分钟即可, 二.Office 2013 的安装 1.Office Professional Plus 201 ...
- MyBatis 3实现时间段精确的查询(转)
效果如下: 说明: 时间范围的查询会存在以下问题: 1.如果单纯采用年月日的形式会出现缺少最后一点的数据,比如要查询2015-09-16到2015-09-17,那么2015-09-17 01:00:0 ...
- 关于卷积网络以及反卷积网络shape的计算
CNN的计算方式: w1 = (w - F_w + 2p) / s_w + 1 h1 = (h - F_h + 2p) / s_h + 1 其中 w, h 分别为上一层的宽高, Filters(ker ...
- 微信的token验证
微信的token验证 在微信公众平台的基本配置中,需要输入token,这个token不是那个access_token springmvc验证代码: @RequestMapping(value=&quo ...
- SQL 用户定义表类型,在存储过程里使用数据类型作參数
在数据库编程里使用数据类型,能够提高代码的重用性.它们常常被使用在方法和存储过程中.使用数据类型,我们能够避免在存储过程里定义一串的參数,让人眼花缭乱,它就相当于面向对象语言里.向一个方法里传入一个对 ...
- [PWA] Check Online Status by using the NavigatorOnLine API
Even if you have your application fully cached, you couldn’t perform any external request without in ...
- poj 3468 A Simple Problem with Integers(线段树+区间更新+区间求和)
题目链接:id=3468http://">http://poj.org/problem? id=3468 A Simple Problem with Integers Time Lim ...
- 数据预处理之Minkowski距离计算
template <class T1, class T2> double Minkowski(const std::vector<T1> &inst1, const s ...