微机原理 编写程序段,或补充完成完整程序

微机原理 编写程序段,或补充完成完整程序,第1张

1、用寄存器BX和位移量COUNT的寄存器相对寻址方式,把存储器中的一个字与AX寄存器之内容相加,并把结果保存在存储器单元中。

解:ADD AX , [BX+COUNT]

MOV [BX+COUNT] , AX

2、将AX寄存器的内容减去CX寄存器的内容,并把结果保存在AX寄存器中。

解:SUB AX ,CX

3、下列程序的功能是:利用DOS的功能调用,显示一串字符;通过填空将下列程序补充完整。

STACK SEGMENT SYACK

DB 256 DUP ()

TOP LABEL WORD

(STACK ENDS )

DATA SEGMENT

BUF DB ‘ I WISH YOU SUCCESS! $ ‘

DATA ENDS

CODE SEGEMENT

ASSUME (CS:CODE,DS:DATA,SS:STACK)

START: MOV AX,( DATA )

MOV DS,( AX )

MOV AX,( STACK )

MOV SS,AX

LEA SP, TOP

LEA DX,( BUF )

MOV AH,9

INT ( 21H )

(MOV AH, 4CH )

INT 21H

CODE ENDS

END START

DATA SEGMENT

TABLE1 DB 0FFH,0FFH,0FFH,0FFH,0FFH

DB 0FFH,0FFH,0FFH,0FFH,0FFH ;这个你自己改吧。

SUM DW

ASCC DB 10 DUP (20h) ,'$'

COUNT DW 10

DATA ENDS

;

CODE SEGMENT

ASSUME CS:CODE ,DS:DATA,ES:DATA

START: MOV AX,DATA

MOV DS,AX

MOV ES,AX

LEA SI,TABLE1

MOV CX,10

XOR AX,AX

XOR BX,BX

CBW

NEXT: MOV AL,[SI]

CBW

ADD BX,AX

INC SI

LOOP NEXT

MOV SUM,BX

;以下是显示部分

LEA SI,sum

MOV BX,10 ;除数

LEA DI,ASCC+9 ;放入要转换的数

MOV AX,[SI]

AGAIN: XOR DX,DX

AND Ax,AX

JNS NEXT4

NEG AX

NEXT4: DIV BX

ADD DL,30H

MOV [DI],DL

XOR DX,DX

DEC DI

INC COUNT

AND AX,AX

JZ NEXT5

JMP NEXT4

NEXT5:

MOV AX,[SI]

CMP AX,8000H

JNC NEXT6

MOV AL,2BH

MOV [DI],AL

JMP NEXT7

NEXT6: MOV AL,'-'

MOV [DI],AL

NEXT7: LEA DX,ASCC

MOV AH,09H

INT 21H

MOV AH,4CH

INT 21H

CODE ENDS

END START

题目不难,但是程序有点麻烦,由于中间只能用A来进行转换,所以比较麻烦,希望你能看懂,分号后面为注释

3-5

SWAP

A

;A高四位和低四位交换

ANL

A,#F0H

;低四位清零

MOV

B,A

;存A

MOV

A,P1

ANL

A,#0FH

;将P1口高四位清零

XOR

A,B

;组合得到结果

MOV

P1,A

3-6

MOV

A,@RO

XCH

A,@R1

XCH

A,@R0

3-7

乘法为:MOV

B,#4

MUL

AB

;结果低八位在A,高八位在B

加法为:MOV

20H,#00H

;淸0,注意位地址00H是字节地址20H的最低位

MOV

R1,#20H

MOV

@R0,A

ADD

A,@R0

MOV

@R0,A

MOV

00H,C

ADD

A,@R0

MOV

@R0,A

MOV

A,@R1

ADDC

A,@R1

MOV

B,A

MOV

@R0,A

移位指令:MOV

B,#00H

CLR

C

RLC

A

MOV

B,C

CLR

C

RLC

A

MOV

A,10H

MOV

A,B

ADDC

A,#00H

MOV

B,A

MOV

A,10H

*** 作如下:

按下图中表格的数据为例。A1到A8单元格为排名的数据;B1到B8单元格显示名次。

1;光标点下B1单元格,再输入公式:=RANK(A1,A$1:A$8)

2;按回车键,B1单元格即显示名次的数字;

3;光标点下B1单元格,然后,移到单元格右下角,光标呈黑色+字;

4;然后,点住不放手,下拉到B8单元格;

5;放开鼠标,B3到B8单元格即显示对应的名次。

以上是按数据由高到低排名,若是按数据由低到高排名的话, *** 作同上,只是公式改为=RANK(A1,A$1:A$8,1)

以上就是关于微机原理 编写程序段,或补充完成完整程序全部的内容,包括:微机原理 编写程序段,或补充完成完整程序、微机原理编写完整汇编程序,将内存中10个有符号数求和,结果放入SUM单元(类型DW)。有符号数类型DB.、关于《微机原理与应用》的问题(单片机)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10140034.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存