diff --git a/py/showbc.c b/py/showbc.c
index b9024b716de676cb4fb97f718b2c30583e8289fd..8b97c8defaeb97b1744525ef3cd8eda28a9abe76 100644
--- a/py/showbc.c
+++ b/py/showbc.c
@@ -540,7 +540,7 @@ const byte *mp_bytecode_print_str(const byte *ip) {
                 mp_uint_t op = ip[-1] - MP_BC_BINARY_OP_MULTI;
                 printf("BINARY_OP " UINT_FMT " %s", op, qstr_str(mp_binary_op_method_name[op]));
             } else {
-                printf("code %p, byte code 0x%02x not implemented\n", ip, ip[-1]);
+                printf("code %p, byte code 0x%02x not implemented\n", ip - 1, ip[-1]);
                 assert(0);
                 return ip;
             }