首先你得去查找资料了解下PE格式的内容。
npexe属于PE格式,里面本来就有很多乱码(PE头信息很容易辨认的“This program 。。。”),使用UE打开也是如此,不信你试试。。。。
跟你直接cout输出是一样的,乱码不是你程序的问题。
肯定不对了。
LEA DX,L0
MOV AH,09H
INT 21H
这段话的作用是,输出DX指向的一段以$结尾的字符串,而不是用来输出单个字符的。
比如:
dseg segment
msg db 'hello, wordl$';
dseg ends
那么你在程序里可以:
lea dx, msg
mov ah, 9
int 21h
这样可以输出字符串'hello,world'
要输出单个字符,应该是把字符放到dl中输出,例如:
mov dl, 'a'
mov ah, 2
int 21h
下面是照你的程序改的:
CODES SEGMENT
START:
MOV AH,01H
INT 21H
CMP AL,'0'
JE L0
CMP AL,'1'
JE L1
CMP AL,'2'
JE L2
CMP AL,'3'
JE L3
CMP AL,'4'
JE L4
CMP AL,'5'
JE L5
CMP AL,'6'
JE L6
CMP AL,'7'
JE L7
jmp Exit
L0: mov dl, '0'
MOV AH, 2
INT 21H
MOV AH,4CH
INT 21H
L1: mov dl, '1'
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
L2: mov dl, '2'
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
L3: mov dl, '3'
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
L4: mov dl, '4'
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
L5: mov dl, '5'
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
L6: mov dl, '6'
MOV AH,2
INT 21H
MOV AH,4CH
INT 21H
L7: mov dl, '7'
MOV AH,2
INT 21H
Exit:
MOV AH,4CH
INT 21H
HLT
CODES ENDS
END START
当然你的程序有好多可以优化的地方。
解决中文乱码的4种方法
一、JSP页面显示乱码
下面的显示页面(displayjsp)就出现乱码:
程序代码
<html>
<head>
<title>JSP的中文处理</title>
<meta >
是字符串编码的问题,需要使用Unicode(因为你的程序本身是Unicode的)。
pDC->TextOut(0, 0, (LPTSTR)"This is Arial,default width");
改成;
pDC->TextOut(0, 0, L"This is Arial,default width");
或者(建议):
pDC->TextOut(0, 0, _T("This is Arial,default width"));
或者
pDC->TextOut(0, 0, (LPCTSTR)L"This is Arial,default width");
这样就可以了,就是给每个字符串加上L前导(或_T("xxx"))。
其它字符串都需要这样改;
另一个方法是你把程序设置为Ansi的字符串,但是建议你使用Unicode,就是直接加上L前导。
数码管每显示一位,需要延时的,可以写一个延时子程序,延时大纸1~2ms。
主要原因是:proteus 仿真,要求先输出位选码,后输出段选码才行,否则显示就是乱码。
程序修改如下:
#include <reg51h>
#define uchar unsigned char
#define uint unsigned int
uchar LEDDATA[]= {0x06,0x5B,0x4F,0x66,0x6D,0x7D};
uchar WLED[] = {0xfe,0xfd,0xfb,0xf7,0xef,0xdf}; //位选
void delay()//延时子程序
{
uint j;
for(j=400;j>0;j--);
}
void main()
{ uchar i; //不用uint
while(1)
{ for(i = 0; i < 6; i++)
{ P2 = WLED[i];
P0 = LEDDATA[i];
delay();//延时
}
}
}
仿真结果
以上就是关于用C++编的小程序十六进制读取文件,为什么会出现乱码到底哪里错了全部的内容,包括:用C++编的小程序十六进制读取文件,为什么会出现乱码到底哪里错了、汇编语言的一个小程序,刚开始学习,为什么这个程序输出是乱码、程序中的乱码问题怎么解决啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)