Erläuterung zur Semantik der Bitfeldreihenfolge in C

Ich habe Probleme, die genaue Bedeutung eines Absatzes des C99-Standardentwurfs (N1256) über Bitfelder (6.7.2.1:10) zu verstehen:

6.7.2.1 Struktur- und Vereinigungsspezifizierer

[...]

Semantik

[...]

Eine Implementierung kann eine beliebige adressierbare Speichereinheit zuweisen, die groß genug ist, um ein Bitfeld zu halten. Wenn noch genügend Platz vorhanden ist, wird ein Bitfeld, das unmittelbar auf ein anderes Bitfeld in einer Struktur folgt, in benachbarte Bits derselben Einheit gepackt. Wenn nicht genügend Platz vorhanden ist, wird durch die Implementierung festgelegt, ob ein Bitfeld, das nicht passt, in die nächste Einheit eingefügt wird oder benachbarte Einheiten überlappt.Die Reihenfolge der Zuweisung von Bitfeldern innerhalb einer Einheit (hoch zu niedrig oder niedrig zu hoch) ist implementierungsdefiniert. Die Ausrichtung der adressierbaren Speichereinheit ist nicht spezifiziert.

Der hervorgehobene Satz erweitert meine Englischkenntnisse bis an die Grenzen: Ich verstehe nicht, ob er sich auf einzelne Bitfelder innerhalb einer Einheit oder auf Bits bezieht, die innerhalb der einzelnen Bitfelder angeordnet sind, oder auf etwas anderes.

Ich werde versuchen, meinen Zweifel mit einem Beispiel klarer zu machen. Nehmen wir an, dass vorzeichenlose Eingaben 16 Bit sind, dass die Implementierung ein vorzeichenloses int als adressierbare Speichereinheit wählt (und dass Bytes 8 Bit breit sind) und keine anderen Ausrichtungs- oder Auffüllungsprobleme auftreten:

struct Foo {
    unsigned int x : 8;
    unsigned int y : 8;
};

also angenommenx undy Felder werden in der gleichen Einheit gespeichert. Was ist gemäß diesem Satz implementierungsdefiniert? So wie ich es verstehe, bedeutet dies, dass in dieser vorzeichenlosen int-Einheitx kann entweder unter einer niedrigeren Adresse als gespeichert werdeny oder umgekehrt, aber ich bin mir nicht sicher, da ich intuitiv denken würde, dass wenn sich keine Bitfelder mit zwei zugrunde liegenden Speichereinheiten überschneiden, die Deklarationsreihenfolge die gleiche Reihenfolge für die zugrunde liegenden Bitfelder vorschreibt.

Hinweis: Ich fürchte, ich vermisse hier eine subtile Terminologie (oder, schlimmer noch, eine technische), aber ich konnte nicht verstehen, welche.

Jeder mögliche Zeiger geschätzt. Vielen Dank!