#source "input/input_lab_12.txt" ' * Global variables ' * [10,double] v (offset 0) ' Invocation to the main function call main halt #line 4 main: ' * Parameters ' * Local variables ' * double value (offset -4) ' * int i (offset -6) ' * int j (offset -8) ' * [4,[5,int]] w (offset -48) ' * struct {[int day, int month, int year] } date (offset -54) enter 54 #line 13 ' * Read push bp pushi -54 addi pushi 0 addi ini storei #line 14 push bp pushi -54 addi pushi 4 addi pushb 97 b2i storei #line 15 push bp pushi -54 addi pushi 2 addi push bp pushi -54 addi pushi 0 addi loadi push bp pushi -54 addi pushi 4 addi loadi muli pushi 12 modi pushi 1 addi storei #line 16 ' * Write push bp pushi -54 addi pushi 0 addi loadi outi #line 16 ' * Write pushb 10 outb #line 16 ' * Write push bp pushi -54 addi pushi 2 addi loadi outi #line 16 ' * Write pushb 10 outb #line 16 ' * Write push bp pushi -54 addi pushi 4 addi loadi i2f outf #line 16 ' * Write pushb 10 outb #line 18 ' * Read push bp pushi -4 addi inf storef #line 20 push bp pushi -6 addi pushi 0 storei #line 21 ' * While label0: push bp pushi -6 addi loadi pushi 10 lti jz label1 ' * Body of the while statement #line 22 pusha 0 push bp pushi -6 addi loadi pushi 4 muli addi push bp pushi -4 addi loadf storef #line 23 ' * Write push bp pushi -6 addi loadi outi #line 23 ' * Write pushb 58 outb #line 23 ' * Write pusha 0 push bp pushi -6 addi loadi pushi 4 muli addi loadf outf #line 23 ' * Write pushb 32 outb #line 24 ' * If statement push bp pushi -6 addi loadi pushi 2 modi jz label2 ' * Body of the if branch #line 25 ' * Write pushb 111 outb #line 25 ' * Write pushb 100 outb #line 25 ' * Write pushb 100 outb #line 25 ' * Write pushb 10 outb jmp label3 label2: ' * Body of the else branch #line 27 ' * Write pushb 101 outb #line 27 ' * Write pushb 118 outb #line 27 ' * Write pushb 101 outb #line 27 ' * Write pushb 110 outb #line 27 ' * Write pushb 10 outb label3: #line 28 push bp pushi -6 addi push bp pushi -6 addi loadi pushi 1 addi storei jmp label0 label1: #line 30 ' * Write pushb 10 outb #line 32 push bp pushi -6 addi pushi 0 storei #line 33 ' * While label4: push bp pushi -6 addi loadi pushi 4 lti jz label5 ' * Body of the while statement #line 34 push bp pushi -8 addi pushi 0 storei #line 35 ' * While label6: push bp pushi -8 addi loadi pushi 5 lti jz label7 ' * Body of the while statement #line 36 push bp pushi -48 addi push bp pushi -6 addi loadi pushi 10 muli addi push bp pushi -8 addi loadi pushi 2 muli addi push bp pushi -6 addi loadi push bp pushi -8 addi loadi addi storei #line 37 ' * Write push bp pushi -48 addi push bp pushi -6 addi loadi pushi 10 muli addi push bp pushi -8 addi loadi pushi 2 muli addi loadi outi #line 37 ' * Write pushb 32 outb #line 38 push bp pushi -8 addi push bp pushi -8 addi loadi pushi 1 addi storei jmp label6 label7: #line 40 ' * Write pushb 10 outb #line 41 push bp pushi -6 addi push bp pushi -6 addi loadi pushi 1 addi storei jmp label4 label5: ret 0, 54, 0