彙編 實驗7 串指令程式設計

2021-10-07 08:39:50 字數 1493 閱讀 8958

1、編寫程式,實現將記憶體偏移位址為 1000h 開始的連續 100 個位元組送往偏移位址為 1050h 開始 的連續 100 個記憶體單元中。要求使用二種不同的方法(用單一的串操作指令、用帶重複字首的串操作指令)。

方法一:使用movsb指令

data segment

org 1000h

x db 100 dup('1')

org 1050h

y db 100 dup('0')

data ends

code segment

assume ds:data,cs:code

start:

mov ax,data

mov ds,ax

mov es,ax

lea si,x

lea di,y

mov cx,100

cldagain: movsb

dec cx

jnz again

mov ah,4ch

int 21h

code ends

end start

方法二: 使用rep重複字首指令

data segment

org 1000h

x db 100 dup(1)

org 1050h

y db 100 dup(2)

data ends

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

mov es,ax

lea si,x

lea di,y

mov cx,100

cldrep movsb

mov ah,4ch

int 21h

code ends

end start

2、程式設計實現:對 str1 和 str2 兩個字串進行比較,若兩串相同,給 dl 送 1,否則送-1。

data segment

str1 db '123456'

str2 db '1234567'

data ends

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

lea si,str1

lea di,str2

cldrepz cmpsb

jnz umat

mov dl,1

jmp next

umat: mov dl,-1

next: mov ah,4ch

int 21h

code ends

end start

彙編實驗1 用機器指令和彙編指令程式設計

1.實驗執行環境 win10系統下的dosbox 2.實驗所用偵錯程式為debug 一 基礎指令 此次實驗中所用到的7條debug命令 r,d,e,u t,a 1.r命令 檢視 改變cpu暫存器的內容 檢視暫存器的值 改變cs ip的值 可見cs,ip的值由上面的073f和0100變成了0000 2...

實驗 用機器指令和彙編指令程式設計

1 教材實驗一結論 1 通過以下兩種方式將以下程式段寫入記憶體 e命令和a命令。b8 20 4e mov ax,4e20h 0516 14add ax,1416h bb 00 20mov bx,2000h 01d8 add ax,bx 89c3 mov bx,ax 01d8 add ax,bx b8...

實驗1 使用機器指令和彙編指令程式設計

一.實驗目的 1.熟練掌握使用debug工具編寫和除錯x86彙編命令的方法 2.掌握8086cpu,暫存器,記憶體的基礎知識 3.理解並掌握記憶體中多位元組資料的存放 小端法 4.理解並掌握棧記憶體空間的特性和使用 5.掌握指令mov,add,sub,jmp,push,pop的基礎用法 二.實驗準備...