汇编语言问题:怎么改成用十六进制输出1~9的立方,怎么控制多次输入

问题描述

汇编语言问题:怎么改成用十六进制输出1~9的立方,怎么控制多次输入

DATA SEGMENT
BUF DB 0AH,0DH,'PLEASE INPUT X(0...9):$'
TABLE DW 0,1,4,9,16,25,36,49,64,81
X DB ?
RESU DW ?
OUTD DB 0AH,0DH,'THE RESULT IS:$'
INERR DB 0AH,0DH,'INPUT ERROR!$'
DATA ENDS
CODE SEGMENT
ASSUME DS:DATA,CS:CODE
START:MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET BUF
MOV AH,09H
INT 21H
MOV AH,01H
INT 21H
CMP AL,'0'
JB LERR
CMP AL,'9'
JA LERR
AND AL,0FH
MOV X,AL
MOV DX,OFFSET OUTD
MOV AH,09H
INT 21H
MOV BX,OFFSET TABLE
MOV AL,X
MOV AH,0
SHL AX,1
ADD BX,AX
MOV DL,[BX]
MOV DH,[BX+1]
MOV RESU,DX
MOV CL,4
SHR DL,CL
ADD DL,30H
MOV AH,2
INT 21H
MOV DX,RESU
AND DL,0FH
ADD DL,30H
MOV AH,2
INT 21H
MOV DL,48H
MOV AH,2
INT 21H
EXIT:MOV AH,4CH
INT 21H
LERR:MOV DX,OFFSET INERR
MOV AH,09H
INT 21H
JMP EXIT
CODE ENDS
END START

时间: 2024-12-27 04:38:39

汇编语言问题:怎么改成用十六进制输出1~9的立方,怎么控制多次输入的相关文章

电脑中通过注册表将3DSMAX界面语言改成中文的方法

  电脑中通过注册表将3DSMAX界面语言改成中文的方法          1.按win+R打开运行,输入regedit打开注册表编辑器; 2.如果弹出用户帐户控制窗口则点击是; 3.依次展开HKEY_LOCAL_MACHINESOFTWAREAutodesk3dsMax16.0; 4.可以看到LanguageInstalled中有"CHS"和"ENU"项,将两个项的名称调换过来; 5.接着打开3DSMAX软件,就可以用中文显示. 若发现电脑中安装的3DSMAX软件

用汇编语言将十进制数据转换成十六进制数。要求从键盘上输入一个十进制数,然后以十六进制数输出

问题描述 用汇编语言将十进制数据转换成十六进制数.要求从键盘上输入一个十进制数,然后以十六进制数输出 用汇编语言将十进制数据转换成十六进制数.要求从键盘上输入一个十进制数,然后以十六进制数输出,用子程序实现 解决方案 http://www.cnblogs.com/vongang/archive/2011/11/16/2251645.html

phpmyadmin怎么改成输出编码是中文的?大神谢谢了,有图

问题描述 phpmyadmin怎么改成输出编码是中文的?大神谢谢了,有图 代码也打对了,php文件也用的是utf8的,觉得是数据库出问题了?还是哪里?谢谢 解决方案 charset =UTF-8 解决方案二: 数据库编码是不是UTF-8的

char型为什么不能输出一个汉字?改成char[]后下面的sex输出的为什么还不对?

问题描述 char型为什么不能输出一个汉字?改成char[]后下面的sex输出的为什么还不对? struct stu { int num; char name[20]; int age; char sex[20]; float score; }stu2,stu1={101,"tiandongliang",18,'男',100}; stu2=stu1; printf("number=%dnname=%sn",stu2.num,stu2.name); printf(&q

求大神把这个icmp寻找活动主机的c#控制台应用程序改成窗体应用程序,需要在窗口上输出结果

问题描述 求大神把这个icmp寻找活动主机的c#控制台应用程序改成窗体应用程序,需要在窗口上输出结果usingSystem;usingSystem.Collections.Generic;usingSystem.Text;namespaceActiveHost{publicclassIcmpPacket{privateByte_type;//类型privateByte_subCode;//代码privateUInt16_checkSum;//校验和privateUInt16_identifier

qt-vs2012平台下将工具集改成VS2010 V100之后生成出错

问题描述 vs2012平台下将工具集改成VS2010 V100之后生成出错 vs2012平台下新建QT application工程,将工具集改成VS2010 V100之后生成出错,情况如下:1>qtmaind.lib(qtmain_win.obj) : error LNK2038: 检测到"_MSC_VER"的不匹配项: 值"1700"不匹配值"1600"(moc_rr.obj 中) 解决方案 工程属性->配置属性-> 清单工具

编码-霍夫曼树程序,输入字符串统计字符出现次数并译码。请问如何改成从文件读入字符串?

问题描述 霍夫曼树程序,输入字符串统计字符出现次数并译码.请问如何改成从文件读入字符串? //生成HuffmanCode文件的两个函数void HuffmanEncoding(HuffmanTree HTHuffmanCode HC){//根据HuffmanTreeHT求HuffmanCode表HC int cpi; char cd[n]; int start; cd[num] = ''; for(i = 1;i <= num;i++){ start = num; c = i; while((p

c语言-C++代码改成C语言代码,没学过C++好多看不懂啊(泪奔······)求大神指点,我用的VC6.0

问题描述 C++代码改成C语言代码,没学过C++好多看不懂啊(泪奔······)求大神指点,我用的VC6.0 代码如下, #include "winsock2.h" #include "Winsnmp.h" #include 这里是string以下都要用 < 和 > 括起来(不知为何不显示=,=) #include vector #include algorithm #include iostream #pragma comment(lib,"

下面的程序为什么不对? 只有将puts(n);改成printf(&amp;amp;quot;%d&amp;amp;quot;,n);时才对。 为什么?

问题描述 下面的程序为什么不对? 只有将puts(n);改成printf("%d",n);时才对. 为什么? system("color 2f"); int i,n; char s1[50]; gets(s1); i=0; n=0; while(s1[i+1]!='') { if(s1[i]+1==s1[i+1]) n++; i++; } puts(n); system("pause"); 解决方案 puts(s);puts(s) 等效于prin