Problem 1: The Hack assembler is a two-pass assembler. Explain why there is a need for going twice over the code.
Problem 2: There is a method named backpatching that solves this issue with one pass only. Describe this method.
Problem 3: What are the pros and cons for one pass assembly vs. two pass assembly? in-text citation as well.