<p>Opcodes between <code>OP_0</code> (<code>0x00</code>) and <code>OP_PUSHDATA1</code> (<code>0x4c</code>, <code>76</code>) (exclusive range) are push opcodes.</p>

<p>To push data smaller than 76 bytes, data's length, which is an opcode within that range should be used.</p>

<p>For example, to push <code>0x01020304</code>, which has four bytes, <code>0x04</code> should be used: <code>0x0401020304</code>.</p>

<p>To push <code>0x12</code>, which has one byte, prepend with <code>0x01</code>: <code>0x0112</code></p>

CC BY-SA 4.0
2018-08-27T13:21:32.620Z
Sorry for the confusion, I know 0x41 is 65 , the question is 0x41 not in the current OP list.
Carpemer
CC BY-SA 4.0
2018-08-27T14:33:07.720Z
@Capemer I hope the edit understands your question precisely.
MCCCS
CC BY-SA 4.0
2018-08-28T00:01:03.223Z
Thanks!Just clarify with you, the last example is 0x0112?
Carpemer
CC BY-SA 4.0
2018-08-28T05:59:30.873Z
Yup, sorry.....
MCCCS
CC BY-SA 4.0
2018-08-27T12:44:20.487Z
2018-08-28T05:59:18.733Z
2018-08-28T05:59:18.733Z
MCCCS
<p><a href="https://www.blockchain.com/btc/tx/4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b?show_adv=true" rel="nofollow noreferrer">https://www.blockchain.com/btc/tx/4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b?show_adv=true</a>  </p>

<p>The raw script is in the first transaction is:
  <strong>41</strong>04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f<strong>ac</strong>   </p>

<p>0x41 -> 65 (PUSHDATA) # <strong>Why ?????</strong><br>
0xac -> 175 (OP_CHECKSIG)</p>

<p>The list of OP can be found here
<a href="https://github.com/bitcoin/bitcoin/blob/bffb35f876572737b175aa3620bbf3e62c20f444/test/functional/test_framework/script.py" rel="nofollow noreferrer">https://github.com/bitcoin/bitcoin/blob/bffb35f876572737b175aa3620bbf3e62c20f444/test/functional/test_framework/script.py</a></p>

<p>There is no 0x41 OP at all~~~~</p>

<transactions><raw-transaction>
Why the PUSHDATA is 65 in the first transaction in blk00000.dat?
Carpemer
# Why the PUSHDATA is 65 in the first transaction in blk00000.dat?

(Asked by: username_0 on 2018-08-27)

<https://www.blockchain.com/btc/tx/4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b?show_adv=true>

The raw script is in the first transaction is:
**41**04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f**ac**

0x41 -> 65 (PUSHDATA) # **Why ?????**  
0xac -> 175 (OP\_CHECKSIG)

The list of OP can be found here
<https://github.com/bitcoin/bitcoin/blob/bffb35f876572737b175aa3620bbf3e62c20f444/test/functional/test_framework/script.py>

There is no 0x41 OP at all~~~~

**Tags:** transactions, raw-transaction


---

## 1 answers

### Answer by username_1 on 2018-08-27. Score: 1 | Accepted answer

Opcodes between `OP_0` (`0x00`) and `OP_PUSHDATA1` (`0x4c`, `76`) (exclusive range) are push opcodes.

To push data smaller than 76 bytes, data's length, which is an opcode within that range should be used.

For example, to push `0x01020304`, which has four bytes, `0x04` should be used: `0x0401020304`.

To push `0x12`, which has one byte, prepend with `0x01`: `0x0112`

> **Comments:**
> **username_0**: Sorry for the confusion, I know 0x41 is 65 , the question is 0x41 not in the current OP list.  
> **username_1**: @Capemer I hope the edit understands your question precisely.  
> **username_0**: Thanks!Just clarify with you, the last example is 0x0112?  
> **username_1**: Yup, sorry.....  

---

