1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Vinvika [58]
3 years ago
8

Write a procedure named Str_find that searches for the first matching occurrence of a source string inside a target string and r

eturns the matching position. The input parameters should be a pointer to the source string and a pointer to the target string. If a match is found, the procedure sets the Zero flag and EAX points to the matching position in the target string. Otherwise, the Zero flag is clear and EAX is undefined.
Computers and Technology
1 answer:
kirill115 [55]3 years ago
6 0

Answer: Provided in the explanation section

Explanation:

Str_find PROTO, pTarget:PTR BYTE, pSource:PTR BYTE

.data

target BYTE "01ABAAAAAABABCC45ABC9012",0

source BYTE "AAABA",0

str1 BYTE "Source string found at position ",0

str2 BYTE " in Target string (counting from zero).",0Ah,0Ah,0Dh,0

str3 BYTE "Unable to find Source string in Target string.",0Ah,0Ah,0Dh,0

stop DWORD ?

lenTarget DWORD ?

lenSource DWORD ?

position DWORD ?

.code

main PROC

  INVOKE Str_find,ADDR target, ADDR source

  mov position,eax

  jz wasfound           ; ZF=1 indicates string found

  mov edx,OFFSET str3   ; string not found

  call WriteString

  jmp   quit

wasfound:                   ; display message

  mov edx,OFFSET str1

  call WriteString

  mov eax,position       ; write position value

  call WriteDec

  mov edx,OFFSET str2

  call WriteString

quit:

  exit

main ENDP

;--------------------------------------------------------

Str_find PROC, pTarget:PTR BYTE, ;PTR to Target string

pSource:PTR BYTE ;PTR to Source string

;

; Searches for the first matching occurrence of a source

; string inside a target string.

; Receives: pointer to the source string and a pointer

;    to the target string.

; Returns: If a match is found, ZF=1 and EAX points to

; the offset of the match in the target string.

; IF ZF=0, no match was found.

;--------------------------------------------------------

  INVOKE Str_length,pTarget   ; get length of target

  mov lenTarget,eax

  INVOKE Str_length,pSource   ; get length of source

  mov lenSource,eax

  mov edi,OFFSET target       ; point to target

  mov esi,OFFSET source       ; point to source

; Compute place in target to stop search

  mov eax,edi    ; stop = (offset target)

  add eax,lenTarget    ; + (length of target)

  sub eax,lenSource    ; - (length of source)

  inc eax    ; + 1

  mov stop,eax           ; save the stopping position

; Compare source string to current target

  cld

  mov ecx,lenSource    ; length of source string

L1:

  pushad

  repe cmpsb           ; compare all bytes

  popad

  je found           ; if found, exit now

  inc edi               ; move to next target position

  cmp edi,stop           ; has EDI reached stop position?

  jae notfound           ; yes: exit

  jmp L1               ; not: continue loop

notfound:                   ; string not found

  or eax,1           ; ZF=0 indicates failure

  jmp done

found:                   ; string found

  mov eax,edi           ; compute position in target of find

  sub eax,pTarget

  cmp eax,eax    ; ZF=1 indicates success

done:

  ret

Str_find ENDP

END main

cheers i hoped this helped !!

You might be interested in
The five types of personal computers are: desktops, laptops, tablets, smartphones, and ________.
motikmotik

Answer:

B. Wearables.

Explanation:

These are tagged to be a category now in the technology as they are seen to make up the fifth type of personal computers in the question above. These are seen to be attached on the body or sometimes embedded to our outfit and also in other cases hung on a part of our body. They are counted to range from fitness trackers to smart watches, headsets etc. They are said to posses microprocessors which aid their functional ability through its use of the internet.

4 0
3 years ago
Audrey would like to save her document. She should choose the Save command from the _____. folder menu window directory
Damm [24]

Answer:

File folder

Explanation:

6 0
3 years ago
Jane wants to add a chart to her presentation so she’ll click the Insert tab and in the Images group, she’ll click the Chart but
kap26 [50]

(A. Stevie only) because You need to go the illustrations tab in order to click on the chart button.

Jane clicked on images tab so she was wrong.

Mark as brainlest plz :)

3 0
3 years ago
The undo function allows the user to cancel up to _____ previous typing actions
valina [46]
It can cancel up to 40 times.
4 0
4 years ago
Read 2 more answers
Is EXE is the extension of MS Excel file.<br> subject: ICT for GR 5
Tju [1.3M]

Answer:

.EXE is not an extension of MS Excel File.  The extention of MS Excel files are:

.xlsx         Excel workbook

.xlsm Excel macro-enabled workbook

.xlsb Excel binary workbook

.xltx         Excel template

Explanation:

3 0
3 years ago
Other questions:
  • Why were the spices in Asia so expensive when sold in Europe?
    11·2 answers
  • When creating an electronic slide presentation, Eliza should ensure that her presentation contains
    6·1 answer
  • Can yall please take these points.
    11·2 answers
  • Describe the difference between public and private IPv4 addresses. If a network is using private IP addresses, how can the compu
    13·1 answer
  • The picture that graphically represents the items you use in windows is called a/an
    5·1 answer
  • Write a definition of the function printDottedLine, which has no parameters and doesn't return anything. The function prints to
    14·1 answer
  • What is a word processor in ms word​
    9·2 answers
  • The area surrounding your car that can't be seen from the driver's seat is called
    14·2 answers
  • Ryan needs to see the space available to insert content on a slide in his presentation. Which feature of a presentation program
    10·1 answer
  • PLEASE HELP ASAP
    15·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!