In this instance, it will produce an X'Fx'. If you want the X'Cx', you can use ZDC instead of ZD as the "TO" field-type.
ZD is a data-type, where it is associated with a start-position and a length. TO=ZD is a conversion. It converts contextually. If it is the wrong conversion for the task, or by choice, TO=ZDF or TO=ZDC may be used. ZD without a start and a length is a conversion (as in my example) short for TO=ZD. In this context it will produce an "unsigned" value - if I wanted a signed value, I would make the conversion TO=ZDC, or plain ZDC, in place of the ZD.
I usually include the TO= to make things clearer. As an expedient (since it was handy) I copied and amended someone else's code, which does the job, but doesn't have the TO=.