Actually, BASIC’s flat structure helped me a lot in understanding Z80 assembly when I was 12. You see, memory addresses were line numbers, registers were variables, JP was GOTO, CALL was GOSUB. CP was IF, JP, Z was THEN GOTO, and LD was LET, and so forth.

> You see, memory addresses were line numbers, registers were variables,

There was only a single[1] register though, the accumulator.

[1] Okay, there was the PC as well. Maybe a flags register too? But only one used for variables, IIRC.