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
MrRa [10]
3 years ago
14

Hello, this is a 2 part question for my beginning assembly class. Thank you in advance for your help

Computers and Technology
1 answer:
madam [21]3 years ago
3 0

Answer:

Complete code is given below:

Explanation:

INCLUDE Irvine32.inc

.data

msgMenu BYTE "---- Boolean Calculator ----", 0dh,0ah

BYTE 0dh,0ah

BYTE "1. x AND y"     ,0dh,0ah

BYTE "2. x OR y"      ,0dh,0ah

BYTE "3. NOT x"       ,0dh,0ah

BYTE "4. x XOR y"     ,0dh,0ah

BYTE "5. Exit program",0

msgAND      BYTE "Boolean AND",0

msgOR       BYTE "Boolean OR",0

msgNOT      BYTE "Boolean NOT",0

msgXOR      BYTE "Boolean XOR",0

msgOperand1 BYTE "Input the first 32-bit hexadecimal operand: ",0

msgOperand2 BYTE "Input the second 32-bit hexadecimal operand: ",0

msgResult   BYTE "The 32-bit hexadecimal result is:            ",0

caseTable   BYTE '1'     # lookup value

DWORD _AND_op        # address of the procedure

EntrySize = ($ - caseTable )

   BYTE '2'

   DWORD _OR_op

   BYTE '3'

   DWORD _NOT_op

   BYTE '4'

   DWORD _XOR_op

   BYTE '5'

   DWORD _ExitProgram

NumberOfEntries=($ - caseTable)/EntrySize

.code

main08stub PROC

   call Clrscr

Menu:

   mov edx, OFFSET msgMenu # menu choices

   call WriteString

   call Crlf

L1: call ReadChar

   cmp al, '5' # is selection valid (1-5)?

   ja L1   # if above 5, go back

   cmp al, '1'

   jb L1   # if below 1, go back

   call Crlf

   call **BLANK**

   jc quit # if CF = 1 exit

   call Crlf

   jmp Menu    # display menu again

quit: exit

main08stub ENDP

#----------------------------------------

**BLANK** PROC

#

# It selects a procedure from the case table

# Receives: AL = number of procedure

# Returns: nothing

#-----------------------------------

   ret

**BLANK** ENDP

#------------------------------------------------

_AND_op PROC

#

# Performs a boolean AND operation

# Receives: Nothing

# Returns: Nothing

#------------------------------------------------

   ret

_AND_op ENDP

#------------------------------------------------

_OR_op PROC

#

# Performs a boolean OR operation

# Receives: Nothing

# Returns: Nothing

#------------------------------------------------

   ret

_OR_op ENDP

#------------------------------------------------

_NOT_op PROC

#

# Performs a boolean NOT operation.

# Receives: Nothing

# Returns: Nothing

#------------------------------------------------

   ret

_NOT_op ENDP

#------------------------------------------------

_XOR_op PROC

#

#

# Performs an Exclusive-OR operation

# Receives: Nothing

# Returns: Nothing

#------------------------------------------------

   ret

_XOR_op ENDP

#------------------------------------------------

_ExitProgram PROC

#

# Receives: Nothing

# Returns: Sets CF = 1 to signal end of program

#------------------------------------------------

   ret

_ExitProgram ENDP

END main08stub

You might be interested in
one_diff(a?): Description: Determine if there is exactly one character different between exactly two strings. Parameters: Determ
Vladimir79 [104]

Answer:

See explaination

Explanation:

def one_diff(s1,s2):#mthod return true if s1 and s2 has one difference

l1=list(s1)#store characters to list

l2=list(s2)

c=0

if len(l1)!=len(l2):

return False

for i in l1:

if i in l2:#for each character if it is in l1 and l2 continue

continue

else:

c+=1

if c==1:

return True#ret True if cis 1 else False

return False

def exchange(s,*k):#method that exchanges characters

l=list(k)

if len(l)!=0:#check validity of arguments

for i in l:

if i<0 and i+(2*i)>len(s):

res=s

elif i>len(s):

res=s

return res

if len(l)==0:#if no indexes are given

c1=s[0]

c2=s[-1]

res=c2

res=res+s[1:]

res=res[0]+res[1:].replace(c2,c1)

return (res)

elif len(l)==1:#if one index is given

c1=s[l[0]]

c2=s[-1]

res=''

for i in s:

if i==c1 or i==c2:

if i==c2:

res+=c1

else:

res+=c2

else:

res+=i

return (res)

else:#if two indexes are given

c1=s[l[0]]

c2=s[l[1]]

res=''

for i in s:

if i==c1 or i==c2:

if i==c2:

res+=c1

else:

res+=c2

else:

res+=i

return (res)

def is_chain(*k):#method that checks words for one difference

l=list(k)

if len(l)==0:

return False

if len(l)==1:

return True

if len(l)>1:

for i in range(len(l)-1):#for two words in l

if one_diff(l[i],l[i+1]):#call one_diff method

continue

else:

return False

return True

def scramble(s):#method that exchanges characters

i=0

while i<len(s)-1:

s=exchange(s,i,i+1)

i+=2

print(s)

please check out the screenshots in attachment.

3 0
3 years ago
The students of a college have to create their assignment reports using a word processing program. Some of the questions in thei
asambeis [7]
The insert table function of a word processing program will be the most useful for comparison.
7 0
3 years ago
Read 2 more answers
In a typical e-mail address, the "host" is user: which one of the following word processing features saves you the most time whe
gayaneshka [121]
Find-and-replace . hope this helps !
4 0
3 years ago
Mikaya works in the planning department
Sonja [21]

Answer:

I don't understand need more information mate.

Explanation:

5 0
3 years ago
Read 2 more answers
Fish Aquarium System of functional and Non-Functional requirement of the system.
Alborosie

<em>hoping</em><em> that</em><em> </em><em>it </em><em>was </em><em>helpful</em><em> to</em><em> </em><em>you</em>

<em>plz </em><em>mark </em><em>me </em><em>as </em><em>brainlist</em><em> answer</em>

7 0
2 years ago
Other questions:
  • If you are asked to bring in agile way of working into the way a meeting runs, which one among the listed options will you imple
    11·1 answer
  • What is the highest education degree available at a community college
    14·1 answer
  • What is the name of the subsystem that transfers data between components inside a pc or between pcs?
    12·1 answer
  • Which is a correct way to test whether two variables representing numbers, numOne and numTwo, are equal?
    8·1 answer
  • You accidentally moved your task bar from the bottom of the screen to the left side. You would like to
    14·2 answers
  • Can someone pls help me my notifications aren’t working, I need help ASAP ty!
    5·1 answer
  • The first synthesizers were small simple machines that were easy to use. a. true b. false
    12·1 answer
  • In this lab, you will use all of the graphics commands you have learned to create an animated scene. Your program should have a
    10·1 answer
  • В.
    11·1 answer
  • For which three everyday activities do people most typically use computers?
    11·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!