ㅈ같은 과제 하면서 나온건데 내가 128bit 이중정밀도 부동소수점 데이터타입을 직접 만들어야함

그래서 예시로 나온게

typedef struct{
        char data[16];
}super;
이게 정의고

더블 두개를 더하거나 곱해서 이 super로 나타내는것도 해야되는데
super super_mult(double op1, double op2);
super super_add(double op1, double op2);
이런것도 만들어야되는데 도저히 어떤식으로 하는지 감이 안옴. 바이너리 수준까지 가서 다 더해서 data 배열에다가 한칸씩 넣어줘야되나?
아니면 그냥 super로 캐스팅해서 double 두개를 더하면 그안에 다 들어가지나?

c언어 문법책 겨우한번 때고왔는데 이런거 시키니까 당황스럽다 좀도와줘요