rs, labelpseudoif (rs == 0) goto labelbeqz branches when a register holds zero. The name is branch if equal to zero, and the form beqz rs, label jumps to the labelled position if rs is zero, continuing to the next instruction otherwise.
It is a pseudo-instruction — a convenient name the assembler rewrites into a real one. Here it becomes beq rs, zero, label, comparing the register against zero, the special register that always holds 0. So beqz is just a shorter, clearer way to write the most common comparison there is. (See beq for how branching and labels work.)
Zero comes up constantly in low-level code, which is why this shorthand exists. It marks the end of text (a zero byte), it is the conventional signal that an operation succeeded, it represents an empty or absent value, and it is where countdown loops finish. So the question is this zero gets asked everywhere: after loading a character, to detect the end of a string; on a returned status, to take the success path; on a counter, to end a loop.
Writing beqz t0, done reads more clearly than spelling out the comparison against zero, and that readability is the entire reason pseudo-instructions exist — the machine code they produce is identical. Its opposite is bnez, which branches when a value is *not* zero.
beq rs, zero, label
A pseudo-instruction: the assembler turns it into the real instruction(s) above.