And actually, if you are clever, you can multiply by any number using shifts, although, it has to be the same number every time.
Since there is no SLA HL. We can either do SLA L \ RL H, or we can do ADD HL,HL which is the equivalent.
Here is the basic principle
100
4*25
4*(1+24)
4*(1+(8*3))
4*(1+(8*(1+2)))
as you can see, in that final line, it's mostly just shifts
with a few adds
multiplyHLBy100:
ld e, l
ld d, h ;de = 1
;multiply by 2
add hl, hl ;hl = 2
;add 1
add hl, de ;hl = 3
;multiply by 8
add hl, hl ;hl = 6
add hl, hl ;hl = 12
add hl, hl ;hl = 24
;add 1
add hl, de ;hl = 25
;multiply by 4
add hl, hl ;hl = 50
add hl, hl ;hl = 100
ret