title: Anyone understand what these instructions are asking, and know how to write this in assembly?
body: <blockquote>
    <p><strong>Problem</strong>- Using the Intel86 simulator, given three one-byte numbers X, Y and Z
    <code>(1&lt;X,Y,Z&lt;100)</code>,
     write the code that computes the modular exponentiation
    X^y mod Z (Example, X=4, Y=3, Z=5 result = 4). X, Y and Z ARE FOUND in
    memory positions 107H, 108H and 109H of your program, so make sure you
    do not use those bytes for instructions. The result of the calculation
    should must be stored in DL.The algorithm code to be used to compute
    the modular exponentiation X^y mod Z is: d,1. Assume that Y is
    represented by bits Yk,Yk-1,Yk-2,...Y0 For j &lt;-- k down to zero
        d &lt;-- (d<em>d) % Z
        IF Y1 == 1 then d &lt;-- (d</em>X) % Z result is in d.</p>
  </blockquote>