微机原理EMU8086使用及指令系统熟悉Word文件下载.docx

上传人:b****6 文档编号:21965377 上传时间:2023-02-02 格式:DOCX 页数:13 大小:1.23MB
下载 相关 举报
微机原理EMU8086使用及指令系统熟悉Word文件下载.docx_第1页
第1页 / 共13页
微机原理EMU8086使用及指令系统熟悉Word文件下载.docx_第2页
第2页 / 共13页
微机原理EMU8086使用及指令系统熟悉Word文件下载.docx_第3页
第3页 / 共13页
微机原理EMU8086使用及指令系统熟悉Word文件下载.docx_第4页
第4页 / 共13页
微机原理EMU8086使用及指令系统熟悉Word文件下载.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

微机原理EMU8086使用及指令系统熟悉Word文件下载.docx

《微机原理EMU8086使用及指令系统熟悉Word文件下载.docx》由会员分享,可在线阅读,更多相关《微机原理EMU8086使用及指令系统熟悉Word文件下载.docx(13页珍藏版)》请在冰豆网上搜索。

微机原理EMU8086使用及指令系统熟悉Word文件下载.docx

①COM——无需分段,所有内容均放在代码段中,程序代码默认从ORG0100H开始

②EXE——需要分段,内容按代码段、数据段、堆栈段划分,编译器自动完成空间的分配

③BIN——二进制文件,适用于所有用户定义的结构类型

④BOOT——适用于在软盘中创建的文件

⑤emptyworkspace可以创建空的文档

此为一个EXE的模板

3.2测试几类简单的指令

3.2.1数据传送指令

①测试一

name"

testmov"

org100h

MOVAX,1234H

MOVBH,12H

MOVBL,34H

MOVCX,12

MOVDX,CX

MOVSP,AX

②测试二

testmov2"

MOVAX,2000H

MOVDS,AX

MOV[1000H],'

A'

MOV[1001H],'

B'

MOVSI,1000H

MOVAX,[SI]

HLT

3.2.2算数运算指令

计算a*b+c-18

其中a=34H,b=56H,c=0E7H

datasegment

DAT1DB34H

DAT2DB56H

DAT3DB0E7H

DATYDW?

ends

stacksegment

dw128dup(0)

codesegment

start:

ASSUMEDS:

DATA,SS:

STACK,CS:

CODE

MOVAX,STACK

MOVSS,AX

MOVAX,DATA

MOVDS,AX

MOVAL,DAT1

MOVBL,DAT2

IMULBL

MOVBX,AX

MOVAL,DAT3

CBW

ADDAX,BX

SUBAX,18

MOVDATY,AX

ends

endstart

3.2.3逻辑运算指令

通过单步调试可以追踪到每一条指令执行所产生的效果,此处指放出最后结果的截图

name'

testlogicoperation'

MOVAX,45FCH

MOVBX,0034H

ANDAL,0FH

ORBX,000FH

XORAH,0FH

NOTBH

3.2.4标志处理和CPU控制类指令

testcontrolandflags'

CLC;

0-->

CF

CMC;

^CF-->

STD;

1-->

DF

CLI;

IF

NOP

NOP;

blank

HLT;

pause

3.2.5循环和移位类指令

testcirclereplacement"

MOVBL,01110010B

STC;

MOVCL,3

RCRBL,CL

算数移位三次后结果应该为

BL=10101110B=AEH

3.3编写一个简单的程序实现字符串的储存、搬移和显示

①不分段,仅使用代码代码段,使用逐个字符存入

FIRSTPROGRAM"

;

setsegmentregister:

MOVAX,1000H

MOVBX,0000H

print"

ThisismyfirstASMprogram-YongRongFeng"

MOV[02h],'

T'

MOV[04h],'

h'

MOV[06h],'

i'

MOV[08h],'

s'

MOV[0ah],'

'

MOV[0ch],'

m'

MOV[0eh],'

y'

MOV[10h],'

MOV[12h],'

f'

MOV[14h],'

MOV[16h],'

r'

MOV[18h],'

MOV[1ah],'

t'

MOV[1ch],'

MOV[1eh],'

MOV[20h],'

S'

MOV[22h],'

M'

MOV[24h],'

MOV[26h],'

p'

MOV[28h],'

MOV[2ah],'

o'

MOV[2ch],'

g'

MOV[2eh],'

MOV[30h],'

a'

MOV[32h],'

MOV[34h],'

-'

MOV[36h],'

Y'

MOV[38h],'

MOV[3ah],'

n'

MOV[3ch],'

MOV[3eh],'

R'

MOV[40h],'

MOV[42h],'

MOV[44h],'

MOV[46h],'

F'

MOV[48h],'

e'

MOV[4ah],'

MOV[4ch],'

MOVCX,38;

timesofmovingcharacters

MOVBX,0002H

movestring

move:

MOVAX,[BX]

MOV[BX+0100H],AX

ADDBX,2

LOOPmove

printscreen

MOVBX,0102H

MOVCX,38

print:

MOVDL,[BX]

MOVAH,02H

INT21H

ADDBX,2

LOOPprint

returnDOS

MOVAH,4CH

INT21H

ret

②分段并使用字符串输入,字符串显示

FIRSTPROGRAMUSEHEX"

HEXDB'

ThisismyfirstASMprogram-YangRongFeng'

'

$'

;

Youneedtocorrespondthesegment

ASSUMECS:

CODE,DS:

STACK

MOVSP,100

printhexonthescreen

MOVDX,OFFSETHEX

MOVAH,9

INT21H

MOVAH,4CH

INT21H;

returnDOS

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 教育学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1