### Узлы графа:
1. **Функции:**
- `generate_random_sequence(length)`
- `crc32_ieee(data)`
- `test_crc32()`
2. **Параметры:**
- `length` (для функции `generate_random_sequence`)
- `data` (для функции `crc32_ieee`)
3. **Циклы и условия:**
- Узел `for byte in data` (в функции `crc32_ieee`)
- Узел `for _ in range(8)` (в функции `crc32_ieee`)
- Узел `if name == "__main__"` (в основном блоке)
4. **Операции:**
- Присвоение `crc = 0xFFFFFFFF` (в функции `crc32_ieee`)
- Присвоение `poly = 0x04C11DB7` (в функции `crc32_ieee`)
- Присвоение `crc ^= byte << 24` (в функции `crc32_ieee`)
- Присвоение `crc = (crc << 1) ^ poly` (в функции `crc32_ieee`)
- Присвоение `crc <<= 1` (в функции `crc32_ieee`)
- Обработка данных и возврат (в `test_crc32`)
5. **Возврат значений:**
- Узел `return crc` (из функции `crc32_ieee`)
- Узел `return` из `generate_random_sequence`
- Узел `return` из `test_crc32`
### Связи между узлами:
- `generate_random_sequence(length)` → `length`
- `crc32_ieee(data)` → `data`
- `test_crc32()` → Узлы `for _ in range(10)` (циркуль) и `crc = crc32_ieee(data)`
- `test_crc32()` → Начало программы (вызов из основного блока)
- Узел `if name == "__main__"` → Вызов `test_crc32()`
- Внутри `crc32_ieee(data)`:
- `for byte in data` → узел `crc ^= byte << 24` (вместе с `data`)
- `for _ in range(8)` → узел `if crc & 0x80000000` (условие для выбора ветвления)
- Узлы `crc = (crc << 1) ^ poly` и `crc <<= 1` связаны с условием
### Узлы графа:
1. **Функции:**
- `generate_random_sequence(length)`
- `crc32_ieee(data)`
- `test_crc32()`
2. **Параметры:**
- `length` (для функции `generate_random_sequence`)
- `data` (для функции `crc32_ieee`)
3. **Циклы и условия:**
- Узел `for byte in data` (в функции `crc32_ieee`)
- Узел `for _ in range(8)` (в функции `crc32_ieee`)
- Узел `if name == "__main__"` (в основном блоке)
4. **Операции:**
- Присвоение `crc = 0xFFFFFFFF` (в функции `crc32_ieee`)
- Присвоение `poly = 0x04C11DB7` (в функции `crc32_ieee`)
- Присвоение `crc ^= byte << 24` (в функции `crc32_ieee`)
- Присвоение `crc = (crc << 1) ^ poly` (в функции `crc32_ieee`)
- Присвоение `crc <<= 1` (в функции `crc32_ieee`)
- Обработка данных и возврат (в `test_crc32`)
5. **Возврат значений:**
- Узел `return crc` (из функции `crc32_ieee`)
- Узел `return` из `generate_random_sequence`
- Узел `return` из `test_crc32`
### Связи между узлами:
- `generate_random_sequence(length)` → `length`
- `crc32_ieee(data)` → `data`
- `test_crc32()` → Узлы `for _ in range(10)` (циркуль) и `crc = crc32_ieee(data)`
- `test_crc32()` → Начало программы (вызов из основного блока)
- Узел `if name == "__main__"` → Вызов `test_crc32()`
- Внутри `crc32_ieee(data)`:
- `for byte in data` → узел `crc ^= byte << 24` (вместе с `data`)
- `for _ in range(8)` → узел `if crc & 0x80000000` (условие для выбора ветвления)
- Узлы `crc = (crc << 1) ^ poly` и `crc <<= 1` связаны с условием